使用cmake与静态链接的boost库交叉编译

时间:2013-12-28 15:31:25

标签: c++ linux boost cmake cross-compiling

我有什么:

  • 使用boost库的c ++项目
  • 使用cmake构建项目并动态链接提升
  • 带有x64的linux机器
  • 带有arm处理器和linux的开发板

我想要的是什么:

一个CMake项目,其中包括以下内容:

  • x64架构的一个版本(用于gtest和本地开发)
  • 另一种手臂架构构建
  • 都使用静态链接的提升库

这是可能的,如果是的话,怎么样?

恕我直言主要问题是告诉cmake,对于第二次构建它应该使用另一个(这次是arm)预编译的boost库来链接。不知道怎么做。

1 个答案:

答案 0 :(得分:1)

假设您使用find_package(Boost ..)来搜索并选择boost组件(如您所愿),如果我的问题得到解决,您可以构建两个不同的目录(您很可能已经这样做)并设置CMake变量在配置之前, BOOST_ROOT 不同。

您也可以稍后设置 Boost_LIBRARIES 以防其余部分相等。

告诉CMake静态链接Boost,只需将 Boost_USE_STATIC_LIBS 设置为开启