c++ - 目标OUTPUT_NAME 依赖于自身
问题描述
我正在使用 python 的cmake-converter来从 .sln 项目生成 cmake 文件。
在 Visual Studio 中,我正在尝试为WSL-GCC-Debug配置生成 cmake 文件。
当 Visual Studio 启动 CMake 生成时,我收到此错误
[CMake] <示例路径> /CMakeLists.txt:220 (add_library) 处的 CMake 错误:
[CMake] Target ' <Example> ' OUTPUT_NAME 取决于自身。
CMakeLists.txt 看起来像这样:
1 set(PROJECT_NAME Example)
2 set(no_group_source_files
...
100 Example.h
...
180 )
181 source_group("" FILES ${no_group_source_files})
182 set(ALL_FILES
183 ${no_group_source_files}
184 )
...
220 add_library(${PROJECT_NAME} SHARED ${ALL_FILES})
这里有一个未解决的问题,但我没有看到有助于我的情况的答案
我是 cmake 的新手并试图调试它。有谁知道为什么会发生这种情况以及我该如何解决?
解决方案
最终我找到了这个问题的解决方案。
编辑CMake文件夹中的Default.cmake (CMake/Default.cmake)
改变
create_property_reader("TARGET_NAME")
除了 TARGET_NAME 之外的其他名称,即
create_property_reader("TARGET_NAME_1")
推荐阅读
- java - Scala:从 WKT 线串获取 geohashes 的库
- javascript - Leaflet.draw a circle error: Cannot read property 'length' of null
- c - 为什么我的 char 数组的第一个值是 10?
- sql - 如何摆脱 PL/SQL 程序中的编译错误?
- git - 为什么 git 对子模块中的新提交视而不见?
- php - 使用公钥进行身份验证
- javascript - 如何更改获取调用和重新渲染屏幕?
- ssl - OVH 域 & 让我们加密 SSL 失败
- reactjs - 从 React 时刻获取月份和日期
- json - 如何使用 jsonPath 过滤空手道 dsl 中的复杂响应?