cmake的add_subdirectory

本文介绍了如何利用CMake的add_subdirectory命令将不同目录的CMakeLists.txt整合到一起,以实现同时编译多个源代码文件。通过示例展示了在test目录下,如何编译hello1和hello2子目录中的CMakeLists.txt,从而构建两个独立的可执行程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

命令格式

    add_subdirectory (source_dir [binary_dir] [EXCLUDE_FROM_ALL])
    添加一个子目录并构建该子目录。

如果想同时编译多个CmakeLists.txt 可以使用add_subdirectory

test/CMakeLists.txt

cmake_minimum_required(VERSION 3.7.1)

project(hello)


add_subdirectory(hello1)
add_subdirectory(hello2)

test/hello1/CMakeLists.txt

PROJECT(HELLO1) 
add_executable(hello1 main1.c)

test/hello1/main.c1

//main.c1 
#include<stdio.h>
int main()
{
     printf("Hello World from t1 Main!\n");
     return 0;
}

test/hello2/CMakeLists.txt

PROJECT(HELLO2) 
add_executable(hello2 main2.c)

test/hello1/main.c2

//main.c2
#include<stdio.h>
int main()
{
     printf("Hello World from t2 Main!\n");
     return 0;
}

编译test/CMakeLists.txt

cmake test/CMakeLists.txt
make
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值