我在Ubuntu 10.04上共享库时遇到问题。在过去的几个月里,我多次尝试过,阅读了很多关于安装库的内容,但我似乎忽略了这一点。
从源代码目录开始,我运行以下命令:
make
运行干净,没有任何错误sudo make install
似乎工作正常,结束于: cp foo.so.0.1 / usr / local / lib /
rm -f /usr/local/lib/foo.so
ln -s /usr/local/lib/foo.so.0.1 /usr/local/lib/foo.so- 醇>
sudo ldconfig
没有任何输出的运行
在编写makefile时,我不能通过名称来解析lib,而是通过它的路径:
不工作:-lfoo
工作:-L/usr/local/lib/foo.so
无论我尝试安装什么库,问题都保持不变。
我在这里缺少什么?或者我该怎么做才能找到答案?
答案 0 :(得分:1)
您的图书馆搜索路径中有/usr/local/lib/
吗?如果不是,则需要在Makefile中同时指定-lfoo
和/usr/local/lib/
,以便链接器知道要查找的位置。
/usr/local/lib/
是否在您的图书馆搜索路径中取决于您的发布。
答案 1 :(得分:0)
请记住,库名称应以lib
开头,并以.so
结尾。也许您错过了起始lib