首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用x86和x64通过CLion为多个目标同时构建CMake和CLion

使用x86和x64通过CLion为多个目标同时构建CMake和CLion
EN

Stack Overflow用户
提问于 2019-10-30 14:16:21
回答 1查看 928关注 0票数 0

我正在Windows上构建一个跨平台库,目标是Windows、Linux、Mac、Android和iOS。

最近,出于几个不相关的原因,我选择了CLion。使用VS,我只需通过两种不同的配置为Windowsx86/x64构建。

我正在努力优化我的工作流程。我的目标是能够点击build一次,并使CLion输出32位和64位构建所有目标平台。

如果可能的话,我如何配置CLion通过多个体系结构(即通过MSVC构建x86和x64、通过WSL构建x86和x64、用于ARM的延迟获取等)通过不同的工具链构建相同的项目?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-30 21:22:34

我张贴这个供将来参考,以防它可以节省任何人的时间乱乱。这很简单,我只是不习惯CLion的处理方法,而且很难找到细节。

简言之;

  • Settings>Build,执行,Deployment>CMake;为您的目标及其体系结构变体(Win_x86_DEBUG/ Execution,Win_x64_DEBUG/Execution等)创建CMake配置文件(
  • ,如果使用MSVC,转到Settings>Build、Execution、Deployment>Toolchains并创建两个Visual工具链)。指定一个x86 arch,另一个指定x64 (您也可以在这里指定ARM变体,尽管您可能不必阅读文章的其余部分)。
  • 返回到CMake配置文件,为每个配置文件分配适当的工具链。

我最初尝试通过CMake直接指定编译器选项(即-G生成器标志,以及平台细节,比如为GCC设置-m32/64 )。除了32位Windows目标外,这一切都很好。CLion在内部使用NMAKE,它不接受选项公开的相同的体系结构定义,这意味着(据我所知)特定管道CLion只能将架构标志发送到CMake以供生成,但是它会抛出,并且不允许您为Win_x86指定体系结构。为此,我创建了多个工具链,如上文所述。同样,最初的方法在Win_x64上也很好--我刚刚让CMake配置文件直接传递生成器(-G "Visual 15 2017 Win64")。

从那里可以构建所有的概要文件,允许您一次为多个平台和体系结构编译相同的项目。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58627365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档