xucvai · 2022年01月02日

全志XR806芯片 如何解决第三方静态库函数符号重复?

请问全志XR806芯片 如何解决第三方静态库函数符号重复?

1 个回答 得票排序 · 时间排序
极术小姐姐 · 2022年01月05日
本回答来源全志XR806芯片 如何解决第三方静态库函数符号重复?

问题分析
1 对于在程序中可以修改的重复定义,直接修改程序即可。
2 multiple definition of的函数都在保密的.a库文件中,重复函数众多,且无法轻易更改程序。由于.a静态文件是由.o可执行文件打包而来,可以先对.a静态库解包,删除掉重复定义的.o可执行文件后重新打包即可。

解决方法
1 拆包.a静态库。

ar -x libtarget.a

2 删除多余的.o文件。
3 重新打包静态库。

ar crv libtarget.a *.o

4 重新编译。

你的回答