内qt的资源我有这样的树结构:cmake的:模块
repository/modules/module1
repository/modules/module2
repository/modules/module..
repository/apps/application1
repository/apps/application2
repository/apps/application..
其中应用程序正在使用一些模块。
现在,我想把一些资源放在一个模块里面(比如一个应用程序使用的一个小部件中的一个非常奇妙的图标),但是......有些东西出错了。
模块的CMakeLists.txt里面,如果我只用:
set(${MODULE_NAME}_RCS
colors.qrc
)
...
qt4_add_resources (${MODULE_NAME}_RHEADERS ${${MODULE_NAME}_RCS})
没有qrc_colors.cxx的任何位置创建。所以我试着添加:
ADD_EXECUTABLE (${MODULE_NAME}
${${MODULE_NAME}_RHEADERS}
)
但..我得到这个奇怪的错误:
CMake Error at repo/modules/ColorModule/CMakeLists.txt:51 (ADD_EXECUTABLE):
add_executable cannot create target "ColorModule" because another
target with the same name already exists. The existing target is a static
library created in source directory
"repo/modules/ColorModule". See documentation for
policy CMP0002 for more details.
(我已经改变了路线的错误的路径)
左右。 。不知道该怎么想,因为我对cmake和qt都是新手。
我该怎么办?
编辑:
如果我添加了${MODULE_NAME}_RHEADERS
和${MODULE_NAME}_RCS
在创建qrc_colors.cxx的add_library命令,但它是在库/模块/模块1 /内置,并在应用程序构建目录不会复制..