diff --git a/dev/release/verify-release-candidate.sh b/dev/release/verify-release-candidate.sh index f4d2800eaf0..f1b11e3ec7f 100755 --- a/dev/release/verify-release-candidate.sh +++ b/dev/release/verify-release-candidate.sh @@ -519,7 +519,14 @@ test_and_install_cpp() { ${ARROW_CMAKE_OPTIONS:-} \ ${ARROW_SOURCE_DIR}/cpp export CMAKE_BUILD_PARALLEL_LEVEL=${CMAKE_BUILD_PARALLEL_LEVEL:-${NPROC}} - cmake --build . --target install + # Expose conda's lib on the *fallback* path so the LLVM tools (llvm-link, + # llvm-ranlib) find libLLVM.*.dylib on flaky @rpath miss on macOS. (Fallback is searched last, + # so it doesn't shadow system libs like libiconv during the build or leak into tests.) + if [ "$(uname)" = "Darwin" ] && [ "${USE_CONDA}" -gt 0 ] && [ -n "${CONDA_PREFIX:-}" ]; then + DYLD_FALLBACK_LIBRARY_PATH="${CONDA_PREFIX}/lib:${DYLD_FALLBACK_LIBRARY_PATH:-/usr/local/lib:/usr/lib}" cmake --build . --target install + else + cmake --build . --target install + fi if [ ${TEST_CPP} -gt 0 ]; then LD_LIBRARY_PATH=$PWD/release:$LD_LIBRARY_PATH ctest \ @@ -779,10 +786,10 @@ test_source_distribution() { if [ "$(uname)" == "Darwin" ]; then NPROC=$(sysctl -n hw.ncpu) - export DYLD_LIBRARY_PATH=$ARROW_HOME/lib:${DYLD_LIBRARY_PATH:-} + export DYLD_LIBRARY_PATH=$ARROW_HOME/lib${DYLD_LIBRARY_PATH:+:${DYLD_LIBRARY_PATH}} else NPROC=$(nproc) - export LD_LIBRARY_PATH=$ARROW_HOME/lib:${LD_LIBRARY_PATH:-} + export LD_LIBRARY_PATH=$ARROW_HOME/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} fi pushd $ARROW_SOURCE_DIR