您的位置:首页 > 其它

关于制定so动态链接库文件需要注意的问题

2013-12-18 10:14 537 查看
如果需要动态链接制定的so文件,如libtest.so,可以如下操作:

1、假设so文件所在的目录为/usr/local/xxx/lib/libtest.so

2、在makefile文件中链接库时,直接用/usr/local/xxx/lib/libtest.so

3、vi /etc/ld.so.conf,添加一行/usr/local/xxx/lib/

4、执行ldconfig命令

5、需要注意,开发机器和运行机器上必须存在/usr/local/xxx/lib/libtest.so (3,4步开发机和运行机器都要执行)

碰到的其它问题:

error while loading shared libraries: libtest-0.8.1.so: cannot open shared object file: No such file or directory

locate 发现libtest-0.8.1.so存在于指定目录下,这是什么问题呢,列出所有相关文件发现,libtest.so和libtest-0.8.1.so大小一样,软连接的问题?删除libtest.so,执行ln -s libtest-0.8.1.so libtest.so,问题解决(由于这里的so文件都是从开发机拷贝而来,可能软连接没有一并拷贝过来,所以需要自己重新建立下)

这么繁琐?好吧,建议还是用静态链接库,虽然包大点,不会这么麻烦配置环境了~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: