我试图在RedHat 6.4上编译cmake-3.1.0-rc1。我在/ usr / local下构建并安装了gcc / g ++ 4.7.4,但是CMake的bootstrap
步骤失败并出现以下错误:
/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by $HOME/src/cmake-3.1.0-rc1/build/Bootstrap.cmk/cmake)
事实上,/usr/lib64/libstdc++.so.6
处的文件并不包含GLIBCXX_3.4.15
,但我不希望CMake使用该文件。我希望它使用/usr/local/lib/libstdc++.so.6
处的GLIBCXX_3.4.15
,其中包含strings /usr/local/lib/libstdc++.so.6 | grep GLIBCXX
(由.so
证明)。
有没有办法让引导的CMake使用/usr/local
而不是/usr/lib64
下的/usr/local/lib64
?理想情况下,它会是某种环境变量或CMake标志,因为我不想修改CMake源附带的CMakeLists文件。
修改:我的路径错了。它实际上应该是{{1}}。
答案 0 :(得分:4)
设置并导出环境变量 LD_LIBRARY_PATH 并将其指向/ usr / local / lib(如果已经将该dir放在前面)。