日期:2014-05-16  浏览次数:20843 次

linux 动态库编译找不到库
我准备编译产生一个动态库a.so,这个动态库需要调用另外一个动态库b.so里的函数,在编译动态库a.so时,报错说

undefined reference to 动态库b.so里的函数

我用nm看了 动态库b.so,里面的函数名称都是正常的,在动态库a.so的cpp代码里,也包含了头文件,并且写了

extern void test(char *aaa);

为什么还会找不到呢?有什么办法找到原因呢? 
------解决方案--------------------
makefile 里面有没有加入 -L<库文件路径> -l<库文件名>
------解决方案--------------------
g++ a.cpp -lb
------解决方案--------------------
gcc编译时,-lb -Lb动态库所在路径
------解决方案--------------------

gcc编译时,-lb -Lb动态库所在路径
------解决方案--------------------
引用:
问题已解决,把所有用到的库和头文件都包含进去
点左上角,结贴吧