CmakeList 组织编译项目的基本用法

本文介绍了如何使用CMakeLists来组织编译项目,包括编译外部源码、创建静态库与动态库,并详细讲解了如何添加头文件和库搜索目录,以及如何链接外部库如OPENCV。通过实例展示了如何生成同名的静态库与动态库,并解释了CMake的相关指令。
摘要由CSDN通过智能技术生成

基本语句

外部编译源码

  • 文档结构

    --projecct
       --main.cpp
       --class1.cpp
       --class1.h
       --Cmakelist.txt     
       --build
  • 项目名

PROJECCT(hello)

  • 版本说明

    CMAKE_MINIMUM_REQUIRED(VERSION 3.2)

  • 编译可执行文件

    ADD_EXECUTABLE(hello main.cpp class1.cpp)

  • 或者用变量指定源文件

    SET(SRC_LIST main.cpp class1.h class1.cpp)

    ADD_EXECUTABLE(hello SRC_LIST)

    或者

    SET(SOURCE_FILES main.cpp class1.h class1.cpp)

    ADD_EXECUTABLE(hello SOURCE_FILES)

  • 消息提示添加

    MESSAGE(STATUS “this is BINARY dir ” ${PROJECT_BINARY_DIR})

    MESSAGE(STATUS “this is SOURCE dir ” ${PROJECT_SOURCE_DIR})

    其中PROJECT_BINARTY_DIR也可以写作HELLO_BINARY_DIR,是build后存放二进制可执行文件的路径。

    其中PROJECT_SOURCE_DIR也可以写作HELLO_SOURCE_DIR,是项目路径。

  • 编译过程

    cd ~/project
    mkdir build
    cd build
    cmake ..
    make

    ..是父级目录; .是当前目录

    cmake后build里会生成 makefile 文件

    make 后生成 hello.bin

    ./hello 运行程序

    清理工作:make clean

编译静/动态库

简单静态库

假设想要生成一个静态库libclas

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值