@@ -18,13 +18,29 @@ echo "Installing base system dependencies..."
1818dnf install -y \
1919 wget curl git \
2020 tinyxml2-devel \
21- ruby \
22- boost-devel
21+ ruby
2322
2423echo " CMake version:"
2524cmake --version
2625
2726
27+ # Build Boost 1.87.0 from source (must match the version used by gtsam-develop on PyPI)
28+ echo " Building Boost 1.87.0 from source..."
29+ cd /tmp
30+ wget https://archives.boost.io/release/1.87.0/source/boost_1_87_0.tar.gz --quiet
31+ tar -xzf boost_1_87_0.tar.gz
32+ cd boost_1_87_0
33+
34+ BOOST_PREFIX=" ${INSTALL_PREFIX} /boost"
35+ ./bootstrap.sh --prefix=${BOOST_PREFIX}
36+ ./b2 install --prefix=${BOOST_PREFIX} --with=all -d0
37+ cd /tmp && rm -rf boost_1_87_0*
38+
39+ export BOOST_ROOT=" ${BOOST_PREFIX} "
40+ export BOOST_INCLUDEDIR=" ${BOOST_PREFIX} /include"
41+ export BOOST_LIBRARYDIR=" ${BOOST_PREFIX} /lib"
42+
43+
2844# Install Gazebo dependencies for SDFormat
2945echo " Installing Gazebo dependencies..."
3046cd /tmp
@@ -94,19 +110,15 @@ cd /tmp && rm -rf sdformat*
94110echo " Cloning GTSAM source (develop branch)..."
95111git clone --depth 1 https://github.com/borglab/gtsam.git ${INSTALL_PREFIX} /gtsam_source
96112
97-
98- # Copy boost .so files so auditwheel can find them.
99- echo " Creating a vendor-ready copy of Boost for auditwheel..."
100- mkdir -p ${INSTALL_PREFIX} /boost/lib
101- # -d preserves symlinks so that libboost_serialization.so -> libboost_serialization.so.1.75.0
102- cp -d /usr/lib64/libboost_* .so* ${INSTALL_PREFIX} /boost/lib/
103-
104113# Write environment file for before-build scripts
105114# gtsam_current symlink will be created by before-build after GTSAM is built
106115cat > ${INSTALL_PREFIX} /env.sh << EOF
107116export INSTALL_PREFIX="${INSTALL_PREFIX} "
108- # Integrated the boost path here
117+ export BOOST_ROOT="${BOOST_PREFIX} "
118+ export BOOST_INCLUDEDIR="${BOOST_PREFIX} /include"
119+ export BOOST_LIBRARYDIR="${BOOST_PREFIX} /lib"
109120export CMAKE_PREFIX_PATH="${INSTALL_PREFIX} /gtsam_current:${INSTALL_PREFIX} /gz-cmake4:${INSTALL_PREFIX} /gz-utils:${INSTALL_PREFIX} /gz-math:${INSTALL_PREFIX} /sdformat:\$ {CMAKE_PREFIX_PATH}"
110- export LD_LIBRARY_PATH="${INSTALL_PREFIX} /boost /lib:${INSTALL_PREFIX} /gtsam_current/lib:${INSTALL_PREFIX} /sdformat/lib:${INSTALL_PREFIX} /gz-utils/lib:${INSTALL_PREFIX} /gz-math/lib:\$ {LD_LIBRARY_PATH}"
121+ export LD_LIBRARY_PATH="${BOOST_PREFIX} /lib:${INSTALL_PREFIX} /gtsam_current/lib:${INSTALL_PREFIX} /sdformat/lib:${INSTALL_PREFIX} /gz-utils/lib:${INSTALL_PREFIX} /gz-math/lib:\$ {LD_LIBRARY_PATH}"
111122EOF
112- echo " before-all completed successfully!"
123+
124+ echo " before-all completed successfully!"
0 commit comments