您当前的位置: 首页 > 

我什么都布吉岛

暂无认证

  • 1浏览

    0关注

    292博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

(十四)内部构建和外部构建概念

我什么都布吉岛 发布时间:2022-03-12 22:55:52 ,浏览量:1

假设我们有一个如下工程需要进行构建:

.
├── CMakeLists.txt
└── main.cpp

0 directories, 3 files

CMakeLists.txt的内容如下:

Project(HELLO)
SET(SRC_LIST main.cpp)
MESSAGE(STATUS "This is BINARY dir " ${HELLO_BINARY_DIR})
MESSAGE(STATUS "This is SOURCE dir " ${HELLO_SOURCE_DIR})
ADD_EXECUTABLE(hello ${SRC_LIST})

我们在CMakelists.txt所在的目录直接键入

cmake .

生成后文件夹内容如下:

.
├── CMakeCache.txt
├── CMakeFiles
├── cmake_install.cmake
├── CMakeLists.txt
├── main.cpp
└── Makefile

1 directory, 6 files

多了许多中间变量。

当然我们也可进入一个新的文件夹,如我们在原CMakeLists.txt所在目录建立一个build目录,并使用以下命令进行CMakeLists.txt“编译”:

cmake ..

生成后文件夹内容变成: . ├── build ├── CMakeLists.txt └── main.cpp

1 directory, 2 files

emm,看起来比较干净。删除起来前者比较麻烦,后者只需要删除build文件夹即可。

前者我们称为内部构建,也就是在CMakeLists.txt同一级目录进行编译,后者我们称为外部构建,与CMakeLists.txt不同级进行构建。

综上所述,外部构建CMake文件夹不会“污染”原文件夹目录,删除起来也比较简单,内部构建则相反,删除起来比较麻烦。

关注
打赏
1658157489
查看更多评论
立即登录/注册

微信扫码登录

0.0358s