如何使用共享库

asiaas 2003-08-21 08:38:08
需要连接两个共享库,一个在/usr/local下的liberro.so,一个在/home/project下的libtest.so,程序在/home/project下
...全文
47 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuty2006 2003-08-22
  • 打赏
  • 举报
回复
mk
DanXer 2003-08-21
  • 打赏
  • 举报
回复
第一步同楼上,
第二步,还有一种办法,这种办法不受,内部so版本号困扰。
添加
/usr/local
/home/project
到/etc/ld.so.conf下,然后
ldconfig
warabi 2003-08-21
  • 打赏
  • 举报
回复
编译的时候加上编译选项:
-L/usr/local -lerro -L/home/project -ltest

运行之前,把LD_LIBRARY_PATH中,
加入 /usr/local和/home/project两个目录。
asiaas 2003-08-21
  • 打赏
  • 举报
回复
谢谢
DanXer 2003-08-21
  • 打赏
  • 举报
回复
需要注意,ld按顺序只找一次,所以你可能要
-lerro -ltest -lerro

-ltest -lerro -ltest
asiaas 2003-08-21
  • 打赏
  • 举报
回复
连接多个库的时候,库的顺序需要注意吗??
asiaas 2003-08-21
  • 打赏
  • 举报
回复
谢谢各位帮助!两个库liberro.so,libtest.so,其中libtest.so是依赖liberro.so编译出来的。连接两个库时,出现libtest.so中的一些函数没有定义(其实都是liberro.so的库函数)
axlw 2003-08-21
  • 打赏
  • 举报
回复
dlopen()
 本课程的主题是: 透析Linux系统编程    不同于市面上的课程,只会把核心主题放到函数的讲解,本课程的核心主题是 Linux系统编程的经验总结 ;    当你在系统编程中,调用一个系统调用来解决问题时,是否考虑过 该系统调用是否会对系统性能带来影响?是否还有最优的方式?    当你在系统编程过程中,遇到问题,是否只是检查代码逻辑,而不会去深入底层去查找问题 ?    本课程将一一解决系统编程带给你的难点,疑点?    比如控制文件IO章节,给出系统文件操作的默认行为,应用中如何修改这些行为,给出文件IO操作的最优方式;   比如系统调用,给出系统调用原理;系统调用的正确使用方式等   比如进程实现,结合底层,对比线程,深入理解两者;给出进程使用经验总结;   比如线程同步,不仅引出互斥锁 条件变量 自旋锁 读写锁使用方式,同时给出各个机制的应用场景 ;   比如 进程间通信,引出各个进程间通信的机制原理,给出各个进程间通信的应用场景;   比如 信号,给出信号在进程中信号处理处理函数的正确使用方式,给出在多线程中信号处理的正确方式;   比如 共享,给出共享的实现机制,给出共享的正确使用方式;   同时 会讲解 系统安全问题 ; 可执行程序的静态布局和动态布局 ;灵活使用内存映射和虚拟内存;系统事件跟踪;   给出程序性能的调优思路;    丰富的项目实例讲解 ,提供宝贵的商业项目开发经验 ; 

23,118

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧