[100%] Linking CXX executable bin/robot_main
/lib/../lib/libHCCore.so: undefined reference to `HPR_A2UTF8(char const*)'
编译链接依赖库libHCCore.so的时候报错:undefined reference to ***,此时原因可能是依赖库所依赖库找不到,此时我们再链接库的时候添加如下链接选项"-Wl,--allow-shlib-undefined"
target_link_libraries(robot_main "-Wl,--allow-shlib-undefined" ${HK_HCCore_LIB})
此选项含义:ld手册上说:这个选项会使ld忽略so库内的未定义符号,但是对于命令行上其它.o文件内的未定义符号仍然报错。
出现如标题所示错误时,可以尝试此方法,但不一定能全部解决,只供参考。
当遇到编译链接库时出现`undefined reference`错误,可能是因为库的依赖没有找到。可以尝试使用链接选项`-Wl,--allow-shlib-undefined`来允许库内的未定义符号,但这不解决所有问题。该选项仅忽略库内部的未定义符号,对于源文件中的未定义符号仍会报错。这是一个潜在的解决方案,但具体情况需具体分析。
464

被折叠的 条评论
为什么被折叠?



