有没有办法将a.so和b.so合成为ab.so?
怎么有这么奇怪的需求?
有没有办法将a.so和b.so合成为ab.so?不行
楼上的,为嘛不行啊?
我的代码中模块太多了,想把各个模块的so变成一个统一的so,省得麻烦
ld combines a number of object and archive files, relocates their data and ties up symbol references. Usually the last step in compiling a program is to run ld.
楼上的基础真扎实,佩服!特地请教另外一个问题:能不能把x.a和y.a编译成为xy.a?我曾经试过:ar cqs xy.a x.a y.a但是,在main.cpp链接xy.a的时候,提示xy.a里面没有index?
可以,不过得先解压出来.o
复制代码[ 本帖最后由 liying_gg 于 2009-12-28 15:30 编辑 ]
学习!
经过大家的帮助,我已经得到了结论:我的疑问是:一个完整的应用,有几个模块(a,b……)组成,a被b调用,b被应用层(m)调用。为了将各个模块统一为一个库文件,各个模块的编译有如下两个选择:1)把各个模块编译为静态库(liba.a,libb.a……),然后把各个静态库解开为.o文件,再打包为统一的库文件libab.a;2)把底层模块编译为静态库(liba.a……),把上层模块编译为动态库(libb.so……),同时链接底层库,最后得到统一的库文件libab.so;
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(9)
怎么有这么奇怪的需求?
有没有办法将a.so和b.so合成为ab.so?
不行
楼上的,为嘛不行啊?
我的代码中模块太多了,想把各个模块的so变成一个统一的so,省得麻烦
ld combines a number of object and archive files, relocates their data and ties up
symbol references. Usually the last step in compiling a program is to run ld.
楼上的基础真扎实,佩服!
特地请教另外一个问题:
能不能把x.a和y.a编译成为xy.a?
我曾经试过:ar cqs xy.a x.a y.a
但是,在main.cpp链接xy.a的时候,提示xy.a里面没有index?
可以,不过得先解压出来.o
复制代码
[ 本帖最后由 liying_gg 于 2009-12-28 15:30 编辑 ]
学习!
经过大家的帮助,我已经得到了结论:
我的疑问是:一个完整的应用,有几个模块(a,b……)组成,a被b调用,b被应用层(m)调用。
为了将各个模块统一为一个库文件,各个模块的编译有如下两个选择:
1)把各个模块编译为静态库(liba.a,libb.a……),然后把各个静态库解开为.o文件,再打包为统一的库文件libab.a;
2)把底层模块编译为静态库(liba.a……),把上层模块编译为动态库(libb.so……),同时链接底层库,最后得到统一的库文件libab.so;