如何使用--undefined = symbol

时间:2018-02-27 22:31:27

标签: c++ gcc linker

如何正确使用标记--undefined=symbol来解决尚未从静态引用打包到共享库中的未定义引用的问题?

我应该使用什么代替symbol

某些背景:

我得到的错误信息如下:

mylib.so: undefined reference to `cv::line(cv::_InputOutputArray const&, cv::Point_<int>, cv::Point_<int>, cv::Scalar_<double> const&, int, int, int)'

cv::linelibstaticA中存在的libstaticBlibsharedFinal相关联的函数。 libstaticA与[{1}}和libstaticB相关联。{/ p>

我一直在阅读这个问题,我能理解的可用解决方案是:

  • 使用对象文件而不是静态库,我出于某种原因无法做到这一点
  • 整个档案:这将导致非常繁重的共享库
  • 使用--undefined=symbol可能是一种解决方案,因为它将导出特定符号而不是整个存档

0 个答案:

没有答案