编译
make及makefile的使用
忘尘~
这个作者很懒,什么都没留下…
展开
-
Ubuntu中GNU Make中的“{}”扩展
今天在看阮一峰make命令教程之Makefile文件的语法这一节的时候碰到如下一行命令:srcfiles := $(shell echo {00..99}.txt)1、测试在shell中这个命令会输出什么:echo {0..9}结果输出:0 1 2 3 4 5 6 7 8 9原来是对大括号中的内容进行了扩展。2、知道了大括号{}的作用,于是尝试在Makefi...原创 2019-03-27 10:45:54 · 374 阅读 · 0 评论 -
gcc -c与gcc -o以及不加参数的区别
一、问题描述可能你在看makefile教程的时候会碰到一个问题,就像我就碰到了,我看的是陈皓 (CSDN)前辈的教程https://seisman.github.io/how-to-write-makefile/overview.html我把问题贴出来,里面有一段makefile是这么写的:edit : main.o kbd.o command.o display.o /...原创 2019-03-21 15:30:22 · 49904 阅读 · 13 评论 -
Makefile中的匹配符%
一、匹配符%Make命令允许对文件名,进行类似正则运算的匹配,主要用到的匹配符是%。比如,假定当前目录下有 f1.c 和 f2.c 两个源码文件,需要将它们编译为对应的对象文件。%.o: %.c等同于下面的写法。f1.o: f1.cf2.o: f2.c使用匹配符%,可以将大量同类型的文件,只用一条规则就完成构建。看到这你可能一头雾水,到底怎么用别急,往下看。二、使用介...原创 2019-03-18 19:06:45 · 25790 阅读 · 9 评论 -
条件编译:通过make传递参数来控制
我们在编译时有时想要分不同情况进行编译,条件编译可以解决这个需求,下面就来举一个实例。一、实例(Ⅰ)c语言源代码文件hello.c:#include <stdio.h> int main(){#ifdef DEBUG printf("#ifdef DEBUG is running!\n");#else printf("#e...原创 2019-03-28 23:14:14 · 9769 阅读 · 1 评论