多个库连接的问题

发布于 2022-07-24 20:12:59 字数 441 浏览 15 评论 1

库连接的问题:
目的: 将一个程序编译成静态库,假设名称为test1.a
但是test1.a 同时又依赖于其他3个库文件1.a, 2.a, 3.a

在程序test2中调用test1.a的函数:
编译程序test2的时候,
$(CC) $(FLAGS) -o $@ $(OBJS) $(LIBS) test1.a
此时会提示: test1.a中有许多函数为undefined symbol,而这些函数正是1.a, 2.a, 3.a中所定义的,

如果采用命令
$(CC) $(FLAGS) -o $@ $(NXPBX_OBJS) $(LIBS) test1.a 1.a 2.a 3.a
也是同样的效果,

我现在想知道,能否将1.a, 2.a, 3.a 直接ar到test1.a中么?
或者有什么其他好的解决方式?

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

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

发布评论

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

评论(1

隔岸观火 2022-07-25 00:41:13

首先,所有的静态库都应该命名成libXXXXXX.a,然后可以用-lXXXXXX来指定依赖的静态库。

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