编译过程中目标文件和静态库文件的重名冲突问题
背景最近出现了一个问题,在执行第三方demo程序的之后,程序正常,把demo整合到自己工程,我们的工程里面有很多文件和库编译通过,但是运行之后,不正常。把demo前移到main去执行,也不正常;程序运行后,只跑demo相关的代码也不正常;又把demo独立编译成.o,再去链接工程的其他.o,还是不正常;demo.o不去链接工程的其他.o,工作正常。后面猜测是同名异常导致第三方库工作不正常。主要用到了这两个参数需要用到-Wl,--whole-archive和 -Wl,--no-whole-a.
原创
2021-05-13 00:38:51 ·
930 阅读 ·
0 评论