动态库调用symbol lookup error: /a.so: undefined symbol: sFun()

sunny_ghm 2010-05-24 03:36:01
大家好,我在linux下用c编写了一个动态库a.so(相应的头文件是a.h),这个动态库用到了b.so和c.a我使用eclipse将b.so和c.a都加入到工程中编译得出a.so。然后我在main.c中调用a.so中的函数sFun(),(已经将a.h以及b.so, c.a都考到了main的工程目录下),使用gcc main.c ./a.so ./b.so ./c.a -o Test
编译没有问题,但是一运行就会报错symbol lookup error: /a.so: undefined symbol: sFun()
请大家帮忙定位,是那里出了问题,谢谢啦~~
...全文
1672 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sky_ghm 2010-08-09
  • 打赏
  • 举报
回复
你是使用c和c++混合编程吧,如果是,需要在头文件中声明extern "C",告诉编译器,将c代码按照c++的方式进行编译。
sunny_ghm 2010-05-25
  • 打赏
  • 举报
回复
to mymtom: 我刚接触Linux,不太动哈,能说的详细一点吗?比如在那个路径下搜索?搜索之后怎样?等等,谢谢拉?请各位多多指教,谢谢~
Tony2251 2010-05-25
  • 打赏
  • 举报
回复
最近 在看 《深入理解计算机系统》中的链接部分,楼主也可以找出这章看看,会很有收获的。
mymtom 2010-05-24
  • 打赏
  • 举报
回复
搜索
LD_LIBRARY_PATH
sunny_ghm 2010-05-24
  • 打赏
  • 举报
回复
我的分数不多,请大家不吝指教,谢谢啦~

23,116

社区成员

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

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