【发布时间】:2013-09-25 17:21:10
【问题描述】:
我有这个树结构:
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 的新手..
我可以尝试什么?
编辑:
如果我在 add_library 命令中添加 ${MODULE_NAME}_RHEADERS 和 ${MODULE_NAME}_RCS,则会创建 qrc_colors.cxx 但它在 repository/modules/module1/built 中,而不是在应用程序构建目录中复制...
【问题讨论】: