【发布时间】:2018-10-10 13:23:56
【问题描述】:
我有一个 find_package 脚本,它使用 ${PlatformToolset} 和 ${Platform} 来查找正确的目录。但是,当使用 nmake 生成器时,似乎这些都没有设置。我认为这些变量没有设置是正确的,还是我做错了什么?这些变量有替代品吗?
【问题讨论】:
我有一个 find_package 脚本,它使用 ${PlatformToolset} 和 ${Platform} 来查找正确的目录。但是,当使用 nmake 生成器时,似乎这些都没有设置。我认为这些变量没有设置是正确的,还是我做错了什么?这些变量有替代品吗?
【问题讨论】:
NMake 设置 MSVC_VERSION 和其他 MSVC 变量,因此 Platformtoolset 和 Platform 可以从中派生:
if(MSVC_VERSION GREATER 1900)
set(PlatformToolSet v141)
else()
set(PlatformToolSet v140)
endif()
if(CMAKE_SIZEOF_VOID_P GREATER 4)
set(Platform x64)
else()
set(Platform Win32)
endif()
【讨论】: