+ -
当前位置:首页 → 问答吧 → 请问有谁知道linux上生成的共享库中,使用nm列出来的符号都可以在外部程序使用吗?

请问有谁知道linux上生成的共享库中,使用nm列出来的符号都可以在外部程序使用吗?

时间:2011-12-12

来源:互联网

我要使用libmtp.so中的一个函数符号ptp_getobject,使用nm查看libmtp.so,其中有这个符号,但我用编译我的程序时提示“undefined reference to `ptp_getobject'”,这个函数没有列在libmtp库的文档中,供其内部使用的,但我查看代码ptp_getobject()函数没有被声明为static。libmtp文档中列出来的函数可以使用。
gcc对共享库的符号有没有可见性属性?

作者: dcb130130   发布时间: 2011-12-12

nm列出来的函数名跟你调用的完全匹配吗?

C 库还是C++库?

作者: Arnold9009   发布时间: 2011-12-12

匹配,都是c函数,没c++代码。

作者: dcb130130   发布时间: 2011-12-12