我正在Windows上构建一个跨平台库,目标是Windows、Linux、Mac、Android和iOS。
最近,出于几个不相关的原因,我选择了CLion。使用VS,我只需通过两种不同的配置为Windowsx86/x64构建。
我正在努力优化我的工作流程。我的目标是能够点击build一次,并使CLion输出32位和64位构建所有目标平台。
如果可能的话,我如何配置CLion通过多个体系结构(即通过MSVC构建x86和x64、通过WSL构建x86和x64、用于ARM的延迟获取等)通过不同的工具链构建相同的项目?
发布于 2019-10-30 21:22:34
我张贴这个供将来参考,以防它可以节省任何人的时间乱乱。这很简单,我只是不习惯CLion的处理方法,而且很难找到细节。
简言之;
我最初尝试通过CMake直接指定编译器选项(即-G生成器标志,以及平台细节,比如为GCC设置-m32/64 )。除了32位Windows目标外,这一切都很好。CLion在内部使用NMAKE,它不接受选项公开的相同的体系结构定义,这意味着(据我所知)特定管道CLion只能将架构标志发送到CMake以供生成,但是它会抛出,并且不允许您为Win_x86指定体系结构。为此,我创建了多个工具链,如上文所述。同样,最初的方法在Win_x64上也很好--我刚刚让CMake配置文件直接传递生成器(-G "Visual 15 2017 Win64")。
从那里可以构建所有的概要文件,允许您一次为多个平台和体系结构编译相同的项目。
https://stackoverflow.com/questions/58627365
复制相似问题