ZBLOG

用cmake 将 yaml静态库 打包到libcis.so 这个动态库后,加载这个libcis.so 这个动态库 出现 undefined symbol: _ZTIN4YAML13BadConversionE 这个问题 怎么解决

在使用CMake将yaml静态库打包到动态库时,出现undefined symbol: _ZTIN4YAML13BadConversionE错误,这通常是因为链接顺序不正确导致的。

你可以尝试以下几种解决方法:

  1. 确保在CMakeLists.txt中正确设置了链接顺序。确保在生成libcis.so动态库时,将yaml静态库放在链接命令的末尾。示例代码如下:
target_link_libraries(libcis.so ${OTHER_LIBS} yaml)
  1. 检查是否有其他相关的依赖项未正确链接。可能需要添加其他依赖项到链接命令中。

  2. 检查编译选项和版本兼容性。确保所使用的yaml静态库与当前系统环境兼容,并且编译选项没有引入冲突。

  3. 如果以上方法都无效,可以尝试重新构建并安装yaml库,或者更新到最新版本。

如果问题仍然存在,请提供更多具体信息,例如完整的CMakeLists.txt文件以及相关代码片段,以便更详细地分析和解决该问题。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=8549

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?