为其他Linux系统构建可执行文件

时间:2017-04-20 19:52:36

标签: c++ linux dynamic cross-platform

是否可以在构建服务器(Ubuntu 14.4 )上为主机系统构建动态链接cpp程序(Ubuntu 16.4 )?

第三方库是针对14.4和16.4单独编译的。 麻烦:在16.4上运行14.4二进制文件会导致undefined symbols包含来自第三方库的字符串。 命令ldd -d -r会返回几个undefined symbols

问题:

  • 我知道gcc会为这个特定的机器编译这个二进制文件,这会导致错误,但究竟是什么导致错误? Libs在这两台机器上,我确信它们编译得很好。
  • 是否有一些我可以提供搜索引擎的主题,或者是一本好书来阅读他的问题?
  • 实际上是否可以从14.4到16.4进行 CrossCompile 或者只是一团糟?
  • 我可以在编译静态而不是动态时解决这个问题吗?

0 个答案:

没有答案