工作中 cmakelist 的积累

Demo 记录

  • main.cpp

    #include <stdio.h>
    #include <iostream>
    include "baz.h"
    using namespace std;

    int main()
    {
    DataBuffer db(10);
    cout << " The value of db is " << db.data<< endl;
    }

  • baz.h

    class DataBuffer
    {
    public.
    DataBuffer(int data);

    public:
    int data;
    };

  • baz.cpp

    #include <stdio.h>
    #include <iostream>
    include "baz.h"
    using namespace std;

    DataBuffer::DataBuffer(int data) : data(data)
    {
    }

  • CMakeLists.txt
    注意: 当时一个 bug 是因为 add_executable() 没有把 baz.cpp 添加进去,导致报错 undefined reference o xx

    cmake_minimum_required(VERSION 2.8)

    设置 C 编译器为环境中的 $CC

    set(CMAKE_C_COMPILER $ENV{CC})

    设置 C++ 编译器为环境中的 $CC

    set(CMAKE_CXX_COMPILER $ENV{CXX})

    include_directories(${PROJECT_SOURCE_DIR})

    project(main)

    add_executable(main main.cpp baz.cpp)

相关推荐
Unlyrical4 小时前
splice, io_uring_prep_splice 调用(无效参数)
linux·服务器·c++·unix
Lucis__5 小时前
STL设计模式探秘:容器适配器&仿函数
c++·容器·stl·仿函数
无敌最俊朗@5 小时前
C++ 对象布局之padding(填充字节)
开发语言·c++
小龙报5 小时前
《DevC++支持C++11等与其软件分辨率低的解决办法》
c语言·c++·windows·蓝桥杯·pat考试·学习方法·dvc++
大佬,救命!!!5 小时前
C++函数式策略模式中配置修改
c++·学习笔记·迭代加深·企业级·函数式策略模式·多文件编译环境·json环境配置修改
Chiang木5 小时前
C++进阶:coroutine 协程
开发语言·c++·协程
蕓晨6 小时前
数据结构 图 的邻接表建立
数据结构·c++
渡我白衣6 小时前
深入 Linux 内核启动:从按下电源到用户登录的全景解剖
java·linux·运维·服务器·开发语言·c++·人工智能
byte轻骑兵7 小时前
Rust赋能Android蓝牙协议栈:从C++到安全高效的重构之路
android·c++·rust
龙泉寺天下行走8 小时前
MinGW-w64 工具链(GCC 编译器) 的不同构建版本的区别
c++