首页 > 编程语言 >使用cmake编译c++源代码

使用cmake编译c++源代码

时间:2022-11-21 16:48:57浏览次数:43  
标签:可执行文件 文件 cmake .. 二进制 makefile c++ 源代码

构建项目的背景:

现在的主流都是编写一个cmakelist.txt,通过cmake去构建一个makefile,再make这个makefile生成可执行文件或者动态库静态库。

 

法1:

1. 新建一个CMakeLists.txt文件,文件中需要包含项目名project(name)、生成可执行文件的操作add_executable()。

  并为这个txt文件做额外的配置,ctrl+shift+P,在输入>camke,选择CMake:Configure,再选择gcc。此时会出现一个bulid文件夹。

2. cd .\build\

3. Cmake.. 或者使用rm * 先清除里面的配置,再使用cmake -G”MinGW Makefiles” ..创建Makefile文件(创建一个makefile文件)

4. Mingw32-make.exe(把cpp文件编译成二进制文件,将二进制文件与可执行文件链接起来)

此时会生成一个cmakelists中对应的可执行文件。

 

法2:

  1. mkdir bulid
  2. cd build
  3. Cmake.. 或者使用rm * 先清除里面的配置,再使用cmake -G”MinGW Makefiles” ..创建Makefile文件(创建一个makefile文件)
  4. Mingw32-make.exe(把cpp文件编译成二进制文件,将二进制文件与可执行文件链接起来)

标签:可执行文件,文件,cmake,..,二进制,makefile,c++,源代码
From: https://www.cnblogs.com/toooooptimiatic/p/16899372.html

相关文章

  • C++中的Struct和Class异同
    C++中为了和语言兼容,保留了C语言中的struct关键字,并且进行了适当扩充.C语言=>struct只是包含成员变量,但不包括成员函数C++中=>struct和class非常类似,既可以包括成员......
  • VS 2022创建ATL组件 (C++)
    步骤如下: 1、新建ATL项目 打开VisualStudio2022新建ATL项目2、添加接口类、实现接口方法.  添加一个新的ATL对象。右键MyComTest项目→添加→新建项→ATL→......
  • C++多线程
    c++多线程多线程其实非常简单多线程是多任务处理的一种特殊形式,多任务处理允许让电脑同时运行两个或两个以上的程序。一般情况下,两种类型的多任务处理:基于进程和基于线程......
  • [排序算法] 基数排序 (C++)
    基数排序解释基数排序基数排序RadixSort是一种非基于比较的排序算法。在基数排序中,和计数排序、桶排序的思想类似,我们要再次用到桶这个东西。......
  • cmake make: *** No targets specified and no makefile found. Stop.
    在linux系统下,使用cmake生成MakeFile文件,使用make批处理MakeFile文件里面的指令(可能是GCC编译器的调用指令)。cmake..;make;但是在windows系统中,使用cmake不会生成Make......
  • C++初阶(vector容器+模拟实现)
    迭代器四种迭代器容器类名::iterator迭代器名;//正向迭代器容器类名::const_iterator迭代器名;//常量正向迭代器,const修饰,只能用于读取容器内的元素,不能改变其值容......
  • 用C/C++开发工业软件适合吗?
    用C/C++开发工业软件最适合的了,这是因为C/C++是仅次于汇编语言的最底层程序开发语言;同时工业软件最大的特征就是专业性强、复杂度高,需要相当深的专业知识、经验、科研基础,并......
  • C++ using 编译指令与名称冲突
    using编译指令:它由名称空间名和它前面的关键字usingnamespace组成,它使名称空间中的所有名称都可用,而不需要使用作用域解析运算符。在全局声明区域中使用using编译指......
  • effectiveC++1、2
    条款01视C++为一个语言联邦​ 在学习c++高效编程时会出现“所有的适当用法都有例外”的情况,解决的方法是:不把c++当作一门语言,而是将其视为以下四门主要次语言组成的联邦......
  • [排序算法] 桶排序 (C++)
    桶排序解释桶排序思想桶排序是一种空间换取时间的排序方式,是非基于比较的。桶排序顾名思义,就是构建多个映射数据的桶,将数据放入桶内,对每个桶内元素进行单独排序。假设......