Linux编程(三)—makefile快速编译

起因

linux环境下,编译c++程序很麻烦,后面g++ -o demo demo.cpp ……往往跟了许多许多东西,这些每次编译的时候都要书写,所以就产生了makefile快速编译方式,具体操作如下。

怎么用makefile?

第一步:下载

makefile是个插件,需要在Vscode里面下载,

第二步:练手

先只针对于主函数,没有调用其他库。

在根目录下创建一个文件叫my

在VScode里面可以查看

然后创建main.cpp文件和makefile文件,直接在VScode里面创建即可,makefile文件直接命令为makefile。

在main.cpp里面输入以下代码:
 

#include <iostream>

using namespace std;

int main(){

    cout <<"我是一只小小鸟\n"<<endl;

}

在makefile里面输入以下代码:

all:main

main:main.cpp

    g++ -o main main.cpp

clean:

    rm -f main

其中:

        第一行表示表示可执行文件,一般每一个.cpp文件(你自己创建的)都有一个可执行文件,第一行最前面固定用all,如果不止一个,用空格隔开。

        第二行表示第一行可执行文件的依赖文件,只要依赖文件发生变化,就会执行第三行命令。

比如main的依赖文件是main.cpp,如果main.cpp发生了变化,就执行  g++ -o main main.cpp

        第四行表示删除所以第一行的可执行文件。如果不止一个,就用空格隔开。

注意,第三行和第四行前面要用tab跳格键,不要直接用空格打几个空格。

第三步:编译

回到secure,输入make,即可执行

若文件没有发生变动,则make后无反应,显示不需要修改,如下图:

编译:

输入:./main

也可以删除可执行文件:输入make clean

小技巧

我们在用Linux编译的时候总是感觉到编译命令太麻烦了,比如

总是这么一大串,所以可以这里想讲一下如何利用makefile为我们减少麻烦。就是对地址进行变量替换。

进入makefile,可以看到编译命令很长很长

我们在头部创建一个变量,把地址赋给变量

地址用空格隔开,不要加分号结尾。

就是这样

把地址用变量代替,使用变量用$(变量名字)

注意,这里可以不用在意排序,不用对位。

还有一点

VScode的上一步快捷键是:ctrl+z

撤销上一步快捷键是:shift+ctrl+z

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值