免责声明:我知道this问题。然而,OP的需求与我的不同:他实际想要的是将应用程序移植到Linux,因此答案就在那条线上,而不是回答我想知道的:错误的原因。
中的说明尝试在CMake GUI中创建下拉列表所以我有这个非常简单的CMakeLists.txt:
cmake_minimum_required(VERSION 3.6)
project(datasetprograms)
set(CMAKE_CXX_STANDARD 11)
#LINES TO MAKE THE GUI DROP-DOWN:
set(TARGET_ARCHITECTURE “arm” CACHE STRING “Architecture to compile to”)
set_property(CACHE TARGET_ARCHITECTURE PROPERTY STRINGS arm x86)
#Add subdirectories for each project
add_subdirectory(helloworld)
基本上我只是按照说明复制并粘贴。但是,我没有在CMake GUI中有一个很好的下拉列表,而是出现了以下错误:
CMakeLists.txt上的CMake错误:9(set_property):set_property可以 找不到CACHE变量TARGET_ARCHITECTURE。也许还没有 已创建
问题:我做错了什么?
答案 0 :(得分:2)
您可以使用TARGET_ARCHITECTURE
检查变量message()
的值,然后您会发现 CACHE 是该值的部分。
这是因为您在set()
命令中使用的双引号不是常用的("
),而是语言特定的(“
)。因此,CMake将set()
命令视为 CACHE ' d。这是错误消息的原因。