【发布时间】:2020-05-28 02:32:38
【问题描述】:
在 CLion 中,如何在 CMakeLists.txt 文件中设置 Visual Studio 构建体系结构?
根据cmake.org,可以在 CMAKE_GENERATOR_TOOLSET 选项中设置 host=x64。
适用于 VS 2013 及更高版本的 Visual Studio 生成器支持使用 通过指定 host=x86 来选择 32 位或 64 位主机工具链 或 CMAKE_GENERATOR_TOOLSET 选项中的 host=x64 值。制作 在此提供选定的工具链架构首选项 变量(x86、x64 或空)。
但是无论我做什么,当我在 CLion 中单击运行时,它都没有效果。
CMakeLists.txt:
cmake_minimum_required(VERSION 3.15)
project(native_data_types)
set(CMAKE_CXX_STANDARD 14)
# http://www.saoe.net/blog/generating-64-bit-projects-for-visual-studio-with-cmake/
# https://cmake.org/cmake/help/latest/variable/CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE.html
# How to set this ?
# set(host "x64")
# set(CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE "x64")
# set(CMAKE_GENERATOR_TOOLSET "host=x64")
# set (native_data_types_ARCHITECTURE "x64")
# set(BUILD_ARCH "-m64")
# set(BUILD_ARCH "-m32")
# set(CMAKE_C_FLAGS -m32)
# set(CMAKE_CXX_FLAGS -m32)
# set(CMAKE_C_FLAGS -m64)
# set(CMAKE_CXX_FLAGS -m64)
add_executable(native_data_types main.cpp)
我可以做的是在 CLion 设置中设置一个额外的工具链,并将所需的工具链设置为默认工具链,但是包含的缓慢绝对是可怕的,而不是我想要的。
我想在 CMakeLists.txt 文件中设置可执行架构,这样我就可以快速切换,一秒钟。
例如,在我使用 gcc 的 Linux 上,我可以设置任一
set(CMAKE_C_FLAGS -m32)
或
set(CMAKE_CXX_FLAGS -m32)
但不幸的是,Visual-Studio-Compiler 似乎没有这样的选项...
【问题讨论】:
标签: c++ visual-studio cmake clion