【发布时间】:2017-01-22 17:28:20
【问题描述】:
我已成功设置我的项目以使用 CMake 构建 UWP 应用程序。但是,在处理资源时,似乎需要将它们作为源添加到add_executable 命令中,并在目标属性中设置为RESOURCE。
所有资源文件都已复制到磁盘上所需的位置。但是,当我生成项目时,所有资源文件最终都位于项目结构的根文件夹中。我尝试添加 source_group 命令,类似于我对 .cpp/.h 源(位于“源文件”文件夹下)所做的操作,但这似乎没有效果。这是我的 CMake 中的相关部分(使用 CMake 3.6.1):
set(ResourceFiles "Package.appxmanifest" "Logo.png" ... etc)
source_group("Resource Files" FILES "${ResourceFiles}")
add_executable(MyExe ${projectSources} ${ResourceFiles})
set_target_properties(MyExe PROPERTIES RESOURCE "${ResourceFiles}")
这可能吗,还是我做错了什么?
【问题讨论】:
-
您的意图是将资源文件添加到资源文件夹中吗?尝试使用这个:file(COPY "[your source file/folder]" DESTINATION "[your destination folder]")
-
不,我认为您误解了这个问题。我已经对其进行了更新,非常清楚这是项目的结构,而不是我要修复的磁盘位置。
-
我已经更新了我的答案。
-
您找到合适的解决方案了吗?我面临同样的问题...谢谢。
-
它现在对我有用,虽然我没有跟踪修复它的原因。我将我的 CMake 版本从 3.6 升级到了 3.8,可能就是这样。我还为所有这些项目添加了 VS_DEPLOYMENT_CONTENT=1,但现在删除它并不会重现我原来的错误。