询问一个库

发布于 2022-09-30 04:17:25 字数 286 浏览 17 评论 0

交叉编译了应用程序后,运行时出错,指示:
can't resolve symbol 'cosf'

应该是库里面缺少该符号,好像是数学的cos函数。
应该是在哪个库里面呢?链接的时候也加上了-lm啊?

能否在编译好的库中搜索其中定义的函数?
.h文件和库文件的关联关系怎么查到阿,也就是说,一个库文件中,包含了多少个.h文件中声明的函数,例如libc.so中包括了string.h,stdio.h等等,这些应该怎么能查到呢?又没有相应的命令阿

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

这个很难查到,不过可以看到一个so里实现了多少个函数:

  1. nm -C -D libc.so

复制代码

宫墨修音 2022-10-07 04:17:25

多谢阿!quite useful!

盛夏已如深秋| 2022-10-07 04:17:25

还有一个不太懂的问题。动态链接库.so的调用是不是在程序中使用了库中定义的函数才进行调用的啊?还是有什么别的关联?
我在程序中并没有找到使用cosf的地方啊?

旧夏天 2022-10-07 04:17:25

你的程序没有使用,有可能你调用的其它函数使用了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文