我想使用gtest,但执行告诉我
./netTest: error while loading shared libraries: libgtest.so.0:
cannot open shared object file: No such file or directory
注意2:我问,因为gtest的lib在/usr/local/libs/
但是只有python和gtest。所有其他库都在/usr/lib/
中。因此我猜gtest安装程序出错了。
答案 0 :(得分:2)
PS。也许您可以安装Debian libgtest-dev
软件包(如果有的话)。
- gcc链接器查找libs的标准路径是什么
醇>
您可以使用gcc -v -x c /dev/null -o /dev/null 2>&1 | grep LIBRARY_PATH
- Debian存储库的标准路径是什么
醇>
也许你的意思是动态加载器将寻找共享库。
查看/etc/ld.so.conf
中的/etc/ld.so.conf.d/
和/或文件。
- 如何将libpath添加到g ++(-L标志正确?)
醇>
您可以使用--rpath
选项ld
。但是,我建议仅在开发期间使用它而不是部署。
您还可以将LD_LIBRARY_PATH
设置为libgtest.so.0
的位置。
答案 1 :(得分:2)
前面问题的答案。 gTest不再使用预编译的库。
Use of precompiled libgtest Not Recommended ------------------------------------------- The Google C++ Testing Framework uses conditional compilation for some things. Because of the C++ "One Definition Rule", gtest must be compiled with exactly the same flags as your C++ code under test. Because this is hard to manage, upstream no longer recommends using precompiled libraries [1].
- Steve M. Robbins,星期六,2012年4月21日17:00:56 -0500
为什么我没有在Wheezy找到这个库,我不会感到惊讶:)