在调用log库编译时由于默认会将整个.a 文件中的函数打包,即ld会默认使用--whole-archive,这样很容易导致同名函数冲突报错问题。
解决方法是使用--no-whole-archive参数只将用到的函数进行编译,就不会出现包重定义冲突问题,
g++ -static -Wl,--whole-archive -lpthread -Wl,--no-whole-archive
在调用log库编译时由于默认会将整个.a 文件中的函数打包,即ld会默认使用--whole-archive,这样很容易导致同名函数冲突报错问题。
解决方法是使用--no-whole-archive参数只将用到的函数进行编译,就不会出现包重定义冲突问题,
g++ -static -Wl,--whole-archive -lpthread -Wl,--no-whole-archive