[MapServer-users] 8.2 compile issue: libgdal.so: undefined reference to `std::condition_variable::wait(std::unique_lock<std::mutex>&)@GLIBCXX_3.4.30'

Herzmann, Daryl E [AGRON] akrherz at iastate.edu
Wed Jul 10 05:18:32 PDT 2024


Howdy Mapserver folks,

I am having trouble getting mapserver 8.2 to compile with a procedure that has worked for many moons and I now just confirmed it works with 8.0.  I caution that perhaps my luck is running out with an ugly mix of OS provided compilers / libraries and those provided by conda/conda-forge.  The error is:

[ 96%] Linking CXX executable shapefuzzer_reproducer
/usr/bin/ld: /opt/miniconda3/envs/prod/lib/libgdal.so: undefined reference to `std::condition_variable::wait(std::unique_lock<std::mutex>&)@GLIBCXX_3.4.30'
collect2: error: ld returned 1 exit status

I am doing the following build procedure:

mkdir build
cd build
export PREFIX=/opt/miniconda3/envs/prod

export PKG_CONFIG_LIBDIR=$PREFIX/lib

cmake .. \
-DBUILD_TESTING=OFF \
-DMAPSERVER_CONFIG_FILE=$PREFIX/etc/mapserver.conf \
-DCMAKE_INSTALL_PREFIX:PATH=$PREFIX \
-DWITH_CLIENT_WFS=1 \
-DWITH_CLIENT_WMS=1 \
-DWITH_GIF=1 \
-DWITH_PHPNG=1 \
-DWITH_PYTHON=1 \
-DWITH_PROTOBUFC=0 \
-DWITH_FRIBIDI=1 \
-DWITH_FCGI=1 \
-DCMAKE_INSTALL_PREFIX:PATH=$PREFIX \
-DPNG_LIBRARY=$PREFIX/lib/libpng.so \
-DPNG_INCLUDE_DIR=$PREFIX/include \
-DJPEG_LIBRARY=$PREFIX/lib/libjpeg.so \
-DJPEG_INCLUDE_DIR=$PREFIX/include \
-DFREETYPE_LIBRARY=$PREFIX/lib/libfreetype.so \
-DFREETYPE_INCLUDE_DIR=$PREFIX/include \
-DGIF_LIBRARY=$PREFIX/lib/libgif.so \
-DGIF_INCLUDE_DIR=$PREFIX/include \
-DCAIRO_LIBRARY=$PREFIX/lib/libcairo.so \
-DCAIRO_INCLUDE_DIR=$PREFIX/include/cairo/ \
-DCURL_LIBRARY=$PREFIX/lib/libcurl.so \
-DCURL_INCLUDE_DIR=$PREFIX/include \
-DPROJ_LIBRARY=$PREFIX/lib/libproj.so \
-DPROJ_INCLUDE_DIR=$PREFIX/include \
-DLIBXML2_LIBRARY=$PREFIX/lib/libxml2.so \
-DLIBXML2_INCLUDE_DIR=$PREFIX/include/libxml2/ \
-DHARFBUZZ_LIBRARY=$PREFIX/lib/libharfbuzz.so \
-DHARFBUZZ_INCLUDE_DIR=$PREFIX/include/harfbuzz/ \
-DZLIB_LIBRARY=$PREFIX/lib/libz.so \
-DZLIB_INCLUDE_DIR=$PREFIX/include \
-DGEOS_LIBRARY=$PREFIX/lib/libgeos_c.so \
-DGEOS_INCLUDE_DIR=$PREFIX/include \
-DGDAL_LIBRARY=$PREFIX/lib/libgdal.so \
-DGDAL_INCLUDE_DIR=$PREFIX/include \
-DPostgreSQL_LIBRARY=$PREFIX/lib/libpq.so \
-DPostgreSQL_INCLUDE_DIR=$PREFIX/include

My OS is Rocky Linux 9.4 and I am using the OS provided compilers, not conda-forge's, I believe.

thank you!
daryl


More information about the MapServer-users mailing list