CMake报错:add_subdirectory not giv

2019-11-28  本文已影响0人  DD_Dog

add_subdirectory命令,可以将指定的文件夹加到build任务列表中。
如果你的目录结构如下:

image.png

main是主工程的CMake目录,需要添加子目录模块sub1 ,那么语法如下:
默认情况下是添加当前目录的子目录,用法如下:

#只需要传入相对主目录的相对路径`sub1`
add_subdirectory(sub1)

如果还需要依赖外部目录(即不是主目录的子目录),就需要指定绝对路径,如下:

#CMAKE_CURRENT_SOURCE_DIR上当CMake目录
add_subdirectory(../3rdparty ${CMAKE_CURRENT_SOURCE_DIR})

不指定绝对路径就会报如下错误:

  CMake Error at CMakeLists.txt:8 (add_subdirectory):
    add_subdirectory not given a binary directory but the given source
    directory "G:/NDKProject/OpenGLES/src/main/cpp/3rdparty/libpng" is not a
    subdirectory of "G:/NDKProject/OpenGLES/src/main/cpp/librenderer".  When
    specifying an out-of-tree source a binary directory must be explicitly
    specified.
上一篇 下一篇

猜你喜欢

热点阅读