我试图用CMake替换项目的构建系统但是,我无法使用CMake制作目标文件。
项目树是这样的:
CMakeLists.txt
psg-play.c
psg/
CMakeLists.txt
psg.h
psg-constants.h
psg.c
生成的Visual Studio 12解决方案无法与错误链接:
LINK : fatal error LNK1181: cannot open input file 'psg\Release\psg.obj'
在psg构建目录(psg \ Release)上有一个名为' psg'的文件。根本没有扩展。
CMakeLists文件如下。 (主要CMakeLists.txt)
# Main
cmake_minimum_required (VERSION 2.8)
#Add all the dependencies
include_directories ("${PROJECT_SOURCE_DIR}/psg")
add_subdirectory (psg)
# --- The project executables ---
project (psgp)
# --- psg-play
add_executable (psg-play psg-play.c)
target_link_libraries (psg-play psg)
PSG /的CMakeLists.txt
add_library(psg psg.c)
如何正确编译和修改这两个文件?
答案 0 :(得分:0)
该命令中缺少project
命令
PSG /的CMakeLists.txt
project (psg)
add_library(psg psg.c)
add_subdirectory
的{{3}}也提到了这一点:
通常,子目录应包含自己的project()命令调用,以便在子目录中生成完整的构建系统(例如VS IDE解决方案文件)。