Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[C++][Gandiva] AlmaLinux 8 CI build failed due to std::filesystem::path usage #38697

Closed
niyue opened this issue Nov 14, 2023 · 0 comments · Fixed by #38698
Closed

[C++][Gandiva] AlmaLinux 8 CI build failed due to std::filesystem::path usage #38697

niyue opened this issue Nov 14, 2023 · 0 comments · Fixed by #38698

Comments

@niyue
Copy link
Contributor

niyue commented Nov 14, 2023

Describe the bug, including details regarding any error messages, version, and platform.

std::filesystem::path has a problem on AlmaLinux 8: verify-rc-source-cpp-linux-almalinux-8-amd64

And we may have to replace the usage of std::filesystem::path with arrow's internal io_util.

https://lists.apache.org/thread/rbfqs9fzy66rv509wjx5j10z5ygqvvnx

https://github.com/ursacomputing/crossbow/actions/runs/6840785973/job/18600423664#step:6:8858

FAILED: release/gandiva-internals-test 
: && /usr/bin/c++ -Wno-noexcept-type  -fdiagnostics-color=always  -Wall -fno-semantic-interposition -msse4.2  -O3 -DNDEBUG -O2 -ftree-vectorize  src/gandiva/CMakeFiles/gandiva-internals-test.dir/bitmap_accumulator_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/engine_llvm_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/function_registry_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/function_signature_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/llvm_types_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/llvm_generator_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/annotator_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/tree_expr_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/encrypt_utils_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/expr_decomposer_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/exported_funcs_registry_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/expression_registry_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/selection_vector_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/lru_cache_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/to_date_holder_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/simple_arena_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/regex_functions_holder_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/decimal_type_util_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/random_generator_holder_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/hash_utils_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/gdv_function_stubs_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/interval_holder_test.cc.o src/gandiva/CMakeFiles/gandiva-internals-test.dir/tests/test_util.cc.o -o release/gandiva-internals-test  -Wl,-rpath,/tmp/arrow-HEAD.tNBaF/cpp-build/release  release/libgandiva.so.1500.0.0  release/libarrow_testing.so.1500.0.0  release/libarrow.so.1500.0.0  /usr/lib64/libcrypto.so  /usr/lib64/libssl.so  brotli_ep/src/brotli_ep-install/lib/libbrotlienc-static.a  brotli_ep/src/brotli_ep-install/lib/libbrotlidec-static.a  brotli_ep/src/brotli_ep-install/lib/libbrotlicommon-static.a  orc_ep-install/lib/liborc.a  protobuf_ep-install/lib/libprotobuf.a  utf8proc_ep-install/lib/libutf8proc.a  re2_ep-install/lib/libre2.a  -ldl  release/libarrow_gmock.so.1.11.0  release/libarrow_gtest_main.so.1.11.0  -ldl  utf8proc_ep-install/lib/libutf8proc.a  /usr/lib64/libcrypto.so  lz4_ep-install/lib/liblz4.a  /usr/lib64/libz.so  snappy_ep/src/snappy_ep-install/lib/libsnappy.a  jemalloc_ep-prefix/src/jemalloc_ep/dist//lib/libjemalloc_pic.a  -lrt  /usr/lib64/libzstd.so  release/libarrow_gtest.so.1.11.0  -pthread  /usr/lib64/libLLVM-15.so && :
src/gandiva/CMakeFiles/gandiva-internals-test.dir/tests/test_util.cc.o: In function `gandiva::GetTestFunctionLLVMIRPath[abi:cxx11]()':
test_util.cc:(.text+0x420): undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
test_util.cc:(.text+0x46f): undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
test_util.cc:(.text+0x621): undefined reference to `std::filesystem::__cxx11::path::has_root_directory() const'
test_util.cc:(.text+0x7d4): undefined reference to `std::filesystem::__cxx11::path::has_filename() const'
test_util.cc:(.text+0x85a): undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
collect2: error: ld returned 1 exit status

Notes

Some background info can be found in this PR: #38677

Component(s)

C++ - Gandiva

pitrou added a commit that referenced this issue Nov 15, 2023
…::path in gandiva (#38698)

### Rationale for this change
AlmaLinux 8 CI reported linker failure when `std::filesystem::path` is used, and This PR tries to it.

### What changes are included in this PR?
Replace replace `std::filesystem::path` in gandiva with arrow's internal io util so that AlmaLinux 8 CI build can work.

### Are these changes tested?
It should be covered by existing tests and CI.

### Are there any user-facing changes?
No
* Closes: #38697

Lead-authored-by: Yue Ni <niyue.com@gmail.com>
Co-authored-by: Yue <niyue.com@gmail.com>
Co-authored-by: Antoine Pitrou <antoine@python.org>
Co-authored-by: Antoine Pitrou <pitrou@free.fr>
Signed-off-by: Antoine Pitrou <antoine@python.org>
@pitrou pitrou added this to the 15.0.0 milestone Nov 15, 2023
dgreiss pushed a commit to dgreiss/arrow that referenced this issue Feb 19, 2024
…system::path in gandiva (apache#38698)

### Rationale for this change
AlmaLinux 8 CI reported linker failure when `std::filesystem::path` is used, and This PR tries to it.

### What changes are included in this PR?
Replace replace `std::filesystem::path` in gandiva with arrow's internal io util so that AlmaLinux 8 CI build can work.

### Are these changes tested?
It should be covered by existing tests and CI.

### Are there any user-facing changes?
No
* Closes: apache#38697

Lead-authored-by: Yue Ni <niyue.com@gmail.com>
Co-authored-by: Yue <niyue.com@gmail.com>
Co-authored-by: Antoine Pitrou <antoine@python.org>
Co-authored-by: Antoine Pitrou <pitrou@free.fr>
Signed-off-by: Antoine Pitrou <antoine@python.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants