velox
velox copied to clipboard
Linux/Arm64 build failed
Problem description
Hi @mbasmanova, when trying to build Velox from source on Linux/ARM64 using command CPU_TARGET="aarch64" make as mentioned in readme.md but the build fails. I am attaching the failure logs for the same. Could you please have a look into this issue?
I am trying to find out the version of Velox that supports Linux/ARM64.
Please let me know if any other information is required.
System information
Velox System Info v0.0.2 Commit: 85fd5c6d1d4b2e6a747eb67c83b6915da490f43d CMake Version: 3.22.1 System: Linux-6.5.0-1018-aws Arch: aarch64 C++ Compiler: /usr/bin/c++ C++ Compiler Version: 11.4.0 C Compiler: /usr/bin/cc C Compiler Version: 11.4.0 CMake Prefix Path: /usr/local;/usr;/;/usr;/usr/local;/usr/X11R6;/usr/pkg;/opt \nThe results will be copied to your clipboard if xclip is installed.
CMake log
/home/ubuntu/velox/_build/release/_deps/xsimd-src/include/xsimd/arch/xsimd_scalar.hpp: In function ‘std::pair<double, double> xsimd::sincos(double)’:
/home/ubuntu/velox/_build/release/_deps/xsimd-src/include/xsimd/arch/xsimd_scalar.hpp:988:57: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
988 | inline std::pair<double, double> sincos(double val) noexcept
| ^~~~~~~~
[47/1338] Building CXX object velox/common/caching/tests/CMakeFiles/velox_cache_test.dir/AsyncDataCacheTest.cpp.o
In file included from /home/ubuntu/velox/_build/release/_deps/xsimd-src/include/xsimd/xsimd.hpp:55,
from /home/ubuntu/velox/./velox/common/base/SimdUtil.h:24,
/home/ubuntu/velox/_build/release/_deps/xsimd-src/include/xsimd/arch/xsimd_scalar.hpp:981:54: note: parameter passing for argument of type ‘std::pair<float, float>’ when C++17 is enabled changed to match C++14 in GCC 10.1
981 | inline std::pair<float, float> sincos(float val) noexcept
| ^~~~~~~~
/home/ubuntu/velox/_build/release/_deps/xsimd-src/include/xsimd/arch/xsimd_scalar.hpp: In function ‘std::pair<double, double> xsimd::sincos(double)’:
/home/ubuntu/velox/_build/release/_deps/xsimd-src/include/xsimd/arch/xsimd_scalar.hpp:988:57: note: parameter passing for argument of type ‘std::pair<double, double>’ when C++17 is enabled changed to match C++14 in GCC 10.1
988 | inline std::pair<double, double> sincos(double val) noexcept
| ^~~~~~~~
ninja: build stopped: subcommand failed.
make[1]: *** [Makefile:103: build] Error 1
make[1]: Leaving directory '/home/ubuntu/velox'
make: *** [Makefile:110: release] Error 2
CC: @kgpai @assignUser @majetideepak
This is just a note and not what made the compilation fail. Could you post the rest of the log?
Here's the rest of the log: CMake Log.txt
In member function ‘void facebook::velox::SelectivityVector::clearAll()’,
inlined from ‘std::enable_if_t<is_same_v<U, facebook::velox::StringView>, void> facebook::velox::SimpleVector<T>::invalidateIsAscii() [with U = facebook::velox::StringView; T = facebook::velox::StringView]’ at /home/ubuntu/velox/./velox/vector/SimpleVector.h:308:55,
inlined from ‘void facebook::velox::SimpleVector<T>::resetDataDependentFlags(const facebook::velox::SelectivityVector*) [with T = facebook::velox::StringView]’ at /home/ubuntu/velox/./velox/vector/SimpleVector.h:427:26:
/home/ubuntu/velox/./velox/vector/SelectivityVector.h:159:18: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
This is the error. While we fix the warning, can you try building by
TREAT_WARNINGS_AS_ERRORS=0 CPU_TARGET="aarch64" make
Here is the PR working on a fix for this issue https://github.com/facebookincubator/velox/pull/9578