FreeBSD + clang-9: Unit tests fail to build: undefined symbol: pthread_create
[ 53%] Linking CXX executable ../../unittest/core_tests
cd /usr/ports/security/palisade/work/.build/src/core && /usr/local/bin/cmake -E cmake_link_script CMakeFiles/core_tests.dir/link.txt --verbose=1
/usr/local/bin/clang++90 -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer -I/usr/ports/security/palisade/work/palisade-release-967a49d6825248f9f5366c8760b218a1cefb509c-967a49d6825248f9f5366c8760b218a1cefb509c/third-party/google-test/googletest -isystem /usr/local/include -Wall -Werror -O3 -DPALISADE_VERSION=1.10.5 -Wno-unused-private-field -Wno-shift-op-parentheses -fopenmp=libomp -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer -I/usr/ports/security/palisade/work/palisade-release-967a49d6825248f9f5366c8760b218a1cefb509c-967a49d6825248f9f5366c8760b218a1cefb509c/third-party/google-test/googletest -isystem /usr/local/include -fstack-protector-strong CMakeFiles/core_tests.dir/unittest/UnitTest128.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestBinInt.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestBinVect.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestBlockAllocate.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestCommonElements.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestDCRTElements.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestDistrGen.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestEncoding.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestException.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestField2n.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestLatticeParams.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestMatrix.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestMubintvec.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestNTT.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestNbTheory.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestPolyElements.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestSTLBlockAllocate.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestSerialize.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestTransform.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestTrapdoor.cpp.o CMakeFiles/core_tests.dir/unittest/UnitTestXallocate.cpp.o CMakeFiles/core_tests.dir/__/__/test/Main_TestAll.cpp.o -o ../../unittest/core_tests -Wl,-rpath,/usr/ports/security/palisade/work/.build/lib ../../lib/libPALISADEcore.so.1.10.5 -fopenmp=libomp
ld: error: undefined symbol: pthread_create
>>> referenced by UnitTestDistrGen.cpp
>>> CMakeFiles/core_tests.dir/unittest/UnitTestDistrGen.cpp.o:(std::__1::thread::thread<void (&)(), void>(void (&)()))
clang-9: error: linker command failed with exit code 1 (use -v to see invocation)
Edited by Yuriy Polyakov