[BUG] CUDF JNI build failed FindBoost
Describe the bug after #16640 , pre-merge passed because the CI would install boost as a dep explicitly
the cudf JNI nightly failed cudf_nightly-dev-github run: 1329
10:35:22 [exec] -- ARROW_ZSTD_BUILD_SHA256_CHECKSUM: 8c29e06cf42aacc1eafc4077ae2ec6c6fcb96a626157e0593d5e82a34fd403c1
10:35:22 [exec] -- Looking for _M_ARM64
10:35:22 [exec] -- Looking for _M_ARM64 - not found
10:35:22 [exec] -- Looking for __SIZEOF_INT128__
10:35:23 [exec] CMake Error at /usr/local/cmake-3.26.4-linux-x86_64/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
10:35:23 [exec] Could NOT find Boost (missing: Boost_INCLUDE_DIR) (Required is at least
10:35:23 [exec] version "1.58")
10:35:23 [exec] Call Stack (most recent call first):
10:35:23 [exec] /usr/local/cmake-3.26.4-linux-x86_64/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
10:35:23 [exec] /usr/local/cmake-3.26.4-linux-x86_64/share/cmake-3.26/Modules/FindBoost.cmake:2377 (find_package_handle_standard_args)
10:35:23 [exec] /home/jenkins/agent/workspace/jenkins-cudf_nightly-dev-github-1329-cuda12/java/target/cmake-build/_deps/arrow-src/cpp/cmake_modules/ThirdpartyToolchain.cmake:310 (find_package)
10:35:23 [exec] /home/jenkins/agent/workspace/jenkins-cudf_nightly-dev-github-1329-cuda12/java/target/cmake-build/_deps/arrow-src/cpp/cmake_modules/ThirdpartyToolchain.cmake:1288 (resolve_dependency)
10:35:23 [exec] /home/jenkins/agent/workspace/jenkins-cudf_nightly-dev-github-1329-cuda12/java/target/cmake-build/_deps/arrow-src/cpp/CMakeLists.txt:543 (include)
Steps/Code to reproduce bug
scl enable gcc-toolset-11 "java/ci/build-in-docker.sh true"
Expected behavior Pass the compilation
Environment overview (please complete the following information)
- Environment location: [Bare-metal, Docker, Cloud(specify cloud provider)]
- Method of cuDF install: [conda, Docker, or from source]
- If method of install is [Docker], provide
docker pull&docker runcommands used
- If method of install is [Docker], provide
Environment details
Please run and paste the output of the cudf/print_env.sh script here, to gather any other relevant environment details
Additional context Add any other context about the problem here.
unlike spark-rapids-jni, there is no boost dep in our cudf docker ENV currently https://github.com/rapidsai/cudf/blob/branch-24.10/java/ci/Dockerfile.rocky
cc @mythrocks to help check thanks
Presumably the solution is to just add Boost to the JNI build container?
Alternatively, the choice to always use a system boost was added by @revans2 in https://github.com/rapidsai/cudf/pull/10702, so perhaps he can comment more on whether that's still the right choice. I preserved the behavior in #16640 but as a result I had to install boost into my environment to test. I'm not sure whether that's desirable or not.
Presumably the solution is to just add Boost to the JNI build container?
Alternatively, the choice to always use a system boost was added by @revans2 in #10702, so perhaps he can comment more on whether that's still the right choice. I preserved the behavior in #16640 but as a result I had to install boost into my environment to test. I'm not sure whether that's desirable or not.
We have https://github.com/NVIDIA/spark-rapids-jni/blob/branch-24.10/ci/Dockerfile#L65-L72 in spark-rapids-jni, im still trying to understand whats the minimal required boost version for cudf if install independently thanks
also cc @revans2 for the context, thanks
still trying to understand whats the minimal required boost version for cudf if install independently
The minimum is in the error message, needs Boost 1.58 or later. That's pretty old, so we probably can just install the boost package provided by the standard OS packages to meet this minspec.