6

我有一个 CMakeList.txt 文件,在我的 startevn.cmake 中只有一个衬里 include(startevn.cmake)

project(startevn)
set(headers 
   startup.h
)
set(sources
  system-init.cpp
)
new_library(startevn ${sources} ${headers})

现在我必须将启动移动到不同的目录。之后,我将以下行添加到“startevn.cmake”,

include_directories("/new_folder_location/sub_folder")

其中 sub_folder 是 startup.h 现在所在的位置,但编译器仍然显示找不到源文件:startup.h。我究竟做错了什么?

4

1 回答 1

3

导致之前的代码:

new_library(startevn ${sources} ${headers})

它确实告诉了图书馆的位置,

但之后,你的include_directories()可能不是。

试试:</p>

set(INCLUDE_DIR /new_folder_location/sub_folder)
include_directories (${INCLUDE_DIR})     # make sure your .h all inside.

(或者需要先使用 cmake 的 find_library() 来检查它是否正确找到。)

于 2013-07-25T14:30:53.250 回答