簡體   English   中英

CMake和Visual Studio資源文件

[英]CMake and Visual Studio resource files

我正在將使用Visual Studio 2005創建的C ++項目轉換為CMake,並且偶然發現了項目中包含的資源文件的一些問題。

該項目包括.rc文件,一堆.ico文件和.rc2文件。

常規.rc文件在生成的項目中正常工作並使用資源編譯器。 然而, .ico.rc2文件在被包含時會引起問題,因為在生成的項目中,Visual Studio嘗試使用C / C ++編譯器編譯它們。

我假設這些文件包含在.rc文件中,因此可能只是不將它們包含在CMakeLists.txt文件中,但是因為顯然可以在項目中列出它們(它們在原始項目中可見) )我想這樣做,以便生成的項目的用戶可以看到正在使用這些文件。

在CMake中處理這些額外VS資源文件的正確方法是什么?

嘗試set_source_files_properties(your.ico your.rc2 PROPERTIES LANGUAGE RC)

默認情況下,它不應對這些文件執行任何操作。 源文件屬性LANGUAGE應為空,因此應通過文件類型檢查文件的操作。 哪個不應該是什么,因為它不應該編譯。

檢查您的CMakeLists.txt,它不包含會破壞該屬性的set_source_files_properties命令。

如果你想對文件做一些事情,這里有兩種方法:

使用add_custom_target,您可以在構建項目時添加它們並為它們運行自定義命令。 假設文件已更改。

使用configure_file,您可以根據需要輕松將它們復制到構建目錄。 帶有COPYONLY標志。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM