请问用GCC Link的时候如何去除不用的接口
比如:
link test1.o, test2.o, test3.o, 在这些obj里有一些函数接口是没有被调用到的,如何在link的时候把这些无用的接口去掉以减少代码空间。谢谢
strip -u好象没有这个参数,strip -R可以去除类似.text, .data之类的section,可是函数是存在于.text section里的,包括调用到的和没有被调用到的,比如:
.text 0x0000000084308440 0x840
test.lib(test.o)
0x00000000843085e0 testFun1
0x0000000084308440 testFun2
0x0000000084308640 testFun3
0x00000000843085a0 testFun4
0x0000000084308600 testFun5
其中testFun1被调用到了,其他的都没有,所以直接strip .text section的话把testFun1也去除了。有没有什么方法或者Command Line Options可以去掉不用的函数