工作中 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)

相关推荐
xlp666hub2 小时前
Leetcode 第三题:用C++解决最长连续序列
c++·leetcode
会员源码网3 小时前
构造函数抛出异常:C++对象部分初始化的陷阱与应对策略
c++
xlp666hub5 小时前
Leetcode第二题:用 C++ 解决字母异位词分组
c++·leetcode
不想写代码的星星6 小时前
static 关键字:从 C 到 C++,一篇文章彻底搞懂它的“七十二变”
c++
xlp666hub1 天前
Leetcode第一题:用C++解决两数之和问题
c++·leetcode
不想写代码的星星1 天前
C++继承、组合、聚合:选错了是屎山,选对了是神器
c++
不想写代码的星星2 天前
std::function 详解:用法、原理与现代 C++ 最佳实践
c++
樱木Plus4 天前
深拷贝(Deep Copy)和浅拷贝(Shallow Copy)
c++
blasit6 天前
笔记:Qt C++建立子线程做一个socket TCP常连接通信
c++·qt·tcp/ip
肆忆_7 天前
# 用 5 个问题学懂 C++ 虚函数(入门级)
c++