新手学习记录3:makefile学习实践--自动变量引入
2016-03-18 17:18
246 查看
新手入门,高手请不吝赐教,喷子请留情.
make自动变量在makefile编程中引入
常用的自动变量如下,是一些以美元符号($)开头的符号:
$@ 目标文件名
$< 第一依赖文件名
$^ 所对应的所有依赖文件列表,以空格分隔
$? 所对应的依赖文件新于目标文件的列表,以空格分隔
参照自动变量的名称,将新手学习记录1:makefile学习实践的makefile文件改为:
EXE=hello.o hello1.o
CC=gcc
CFLAGS = -Wall -O -g
main:$(EXE)
$(CC) $^ -o $@
hello.o:hello.c hello1.h
$(CC) $(CFLAGS) -c $<
hello1.o:hello1.c hello1.h
$(CC) $(CFLAGS) -c $<
运行make,结果为:
melody@melody-G41D3:~/make4$ make
gcc -Wall -O -g -c hello.c
gcc -Wall -O -g -c hello1.c
gcc hello.o hello1.o -o main
melody@melody-G41D3:~/make4$ ./main
myprint 1!
自动变量,也称为内部变量,是只用在编译项,即只用在gcc所对应项的.
make自动变量在makefile编程中引入
常用的自动变量如下,是一些以美元符号($)开头的符号:
$@ 目标文件名
$< 第一依赖文件名
$^ 所对应的所有依赖文件列表,以空格分隔
$? 所对应的依赖文件新于目标文件的列表,以空格分隔
参照自动变量的名称,将新手学习记录1:makefile学习实践的makefile文件改为:
EXE=hello.o hello1.o
CC=gcc
CFLAGS = -Wall -O -g
main:$(EXE)
$(CC) $^ -o $@
hello.o:hello.c hello1.h
$(CC) $(CFLAGS) -c $<
hello1.o:hello1.c hello1.h
$(CC) $(CFLAGS) -c $<
运行make,结果为:
melody@melody-G41D3:~/make4$ make
gcc -Wall -O -g -c hello.c
gcc -Wall -O -g -c hello1.c
gcc hello.o hello1.o -o main
melody@melody-G41D3:~/make4$ ./main
myprint 1!
自动变量,也称为内部变量,是只用在编译项,即只用在gcc所对应项的.
相关文章推荐
- iOS之百度地图获取地理位置名称
- php开发memcached
- 函数调用机制2
- Java有了GC同样会出现内存泄露问题
- Giraph集群测试Pagerank
- 【字符串处理算法】删除特定的字符的算法设计及C代码实现
- SQL Server 2008 分区函数和分区表详解
- docker 数据管理<1>
- Gen_server 和 gen_server2
- 问题的总结
- ios7内购、Game Center 实现 in-App Purchases & Game Center
- 采用FLAG_ACTIVITY_CLEAR_TOP退出整个程序(多activity)
- 关于iOS`UITableView`中cell多选 全选自定义问题
- Hibernate之总结
- 函数调用机制
- weblogic 清理缓存
- docker 数据管理<1>
- docker 数据管理<1>
- mysql5.5更换配置文件my.ini后无法登录
- bootstrap数字控件