fix: add abseil library path for protobuf compilation on macOS
- Include abseil in CMAKE_PREFIX_PATH for both Intel and Apple Silicon Macs - Add explicit absl_DIR CMake variable to help find abseil for protobuf - Fixes 'absl/log/absl_log.h' file not found error during compilation 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
13
.github/workflows/build-reusable.yml
vendored
13
.github/workflows/build-reusable.yml
vendored
@@ -108,6 +108,7 @@ jobs:
|
||||
if: runner.os == 'macOS'
|
||||
run: |
|
||||
# Don't install LLVM, use system clang for better compatibility
|
||||
# abseil is automatically installed as a dependency of protobuf
|
||||
brew install libomp boost protobuf zeromq
|
||||
|
||||
- name: Install build dependencies
|
||||
@@ -126,13 +127,13 @@ jobs:
|
||||
if [ -d "/opt/homebrew/opt/libomp" ]; then
|
||||
echo "HOMEBREW_PREFIX=/opt/homebrew" >> $GITHUB_ENV
|
||||
echo "OpenMP_ROOT=/opt/homebrew/opt/libomp" >> $GITHUB_ENV
|
||||
echo "CMAKE_PREFIX_PATH=/opt/homebrew/opt/libomp:/opt/homebrew/opt/boost:/opt/homebrew/opt/protobuf:/opt/homebrew/opt/zeromq" >> $GITHUB_ENV
|
||||
echo "CMAKE_PREFIX_PATH=/opt/homebrew/opt/libomp:/opt/homebrew/opt/boost:/opt/homebrew/opt/protobuf:/opt/homebrew/opt/zeromq:/opt/homebrew/opt/abseil" >> $GITHUB_ENV
|
||||
echo "LDFLAGS=-L/opt/homebrew/opt/libomp/lib" >> $GITHUB_ENV
|
||||
echo "CPPFLAGS=-I/opt/homebrew/opt/libomp/include" >> $GITHUB_ENV
|
||||
elif [ -d "/usr/local/opt/libomp" ]; then
|
||||
echo "HOMEBREW_PREFIX=/usr/local" >> $GITHUB_ENV
|
||||
echo "OpenMP_ROOT=/usr/local/opt/libomp" >> $GITHUB_ENV
|
||||
echo "CMAKE_PREFIX_PATH=/usr/local/opt/libomp:/usr/local/opt/boost:/usr/local/opt/protobuf:/usr/local/opt/zeromq" >> $GITHUB_ENV
|
||||
echo "CMAKE_PREFIX_PATH=/usr/local/opt/libomp:/usr/local/opt/boost:/usr/local/opt/protobuf:/usr/local/opt/zeromq:/usr/local/opt/abseil" >> $GITHUB_ENV
|
||||
echo "LDFLAGS=-L/usr/local/opt/libomp/lib" >> $GITHUB_ENV
|
||||
echo "CPPFLAGS=-I/usr/local/opt/libomp/include" >> $GITHUB_ENV
|
||||
fi
|
||||
@@ -153,8 +154,8 @@ jobs:
|
||||
export CC=clang
|
||||
export CXX=clang++
|
||||
export MACOSX_DEPLOYMENT_TARGET=11.0
|
||||
# Ensure CMake can find all Homebrew packages
|
||||
export CMAKE_ARGS="-DOpenMP_ROOT=${OpenMP_ROOT} -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}"
|
||||
# Ensure CMake can find all Homebrew packages including abseil for protobuf
|
||||
export CMAKE_ARGS="-DOpenMP_ROOT=${OpenMP_ROOT} -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} -Dabsl_DIR=${HOMEBREW_PREFIX}/opt/abseil/lib/cmake/absl"
|
||||
uv build --wheel --python python
|
||||
else
|
||||
uv build --wheel --python python
|
||||
@@ -169,8 +170,8 @@ jobs:
|
||||
export CXX=clang++
|
||||
# DiskANN requires macOS 13.3+ for sgesdd_ LAPACK function
|
||||
export MACOSX_DEPLOYMENT_TARGET=13.3
|
||||
# Ensure CMake can find all Homebrew packages
|
||||
export CMAKE_ARGS="-DOpenMP_ROOT=${OpenMP_ROOT} -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}"
|
||||
# Ensure CMake can find all Homebrew packages including abseil for protobuf
|
||||
export CMAKE_ARGS="-DOpenMP_ROOT=${OpenMP_ROOT} -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} -Dabsl_DIR=${HOMEBREW_PREFIX}/opt/abseil/lib/cmake/absl"
|
||||
uv build --wheel --python python
|
||||
else
|
||||
uv build --wheel --python python
|
||||
|
||||
Reference in New Issue
Block a user