Makefile整理】的更多相关文章

Makefile里的subst 用法是$(subst FROM,TO,TEXT),即将TEXT中的东西从FROM变为TO Makefile中的字符串处理函数 格式: $(subst <from>;,<to>;,<text>;) 名称:字符串替换函数——subst. 功能:把字串<text>;中的<from>;字符串替换成<to>;. 返回:函数返回被替换过后的字符串. 示例: $(subst a,the,There is a big…
源地址 :http://blog.csdn.net/maopig/article/details/6801749 一.前言 回想自己的第一个Makefile,是这个样子的 CODE hello:hello.c     gcc hello.c -o hello 后来有所进步,陆续地写了一些大都是这个样子的Makefile: CODE foobar:foo.o bar.o     gcc -o foo.o bar.ofoo.o:foo.c     gcc -c foo.cbar.o:foo.c   …
最近将Makefile的编写进行了整理和提炼了一下,大致分为五个步骤: 编译总共为五个部分 1.设置编译环境 set compile environment 2.获取要编译的源文件,以及把源文件转换为目标文件 ( 源文件和目标文件) source to obj 3.将文件编译为目标文件 OBJing 4.将目标文件链接成可执行文件或(打包为)动态库,或静态库  linking 5.其他方面 clean等 下面给出一个简单的makefile模板(实际项目中可依照此模板进行扩展): 来看看这个模板:…
makefile规则整理 实际开发中,makefile改的多,写的少. 为了后面不要在编译链接这种地方花费太多的时间,在这里系统性的整理其规则: 基本格式 TARGET : PREREQUISITES command1 command2 ... TARGET:1个目标(.o,lable,可执行文件等等) PREREQUISITES: 一个或者多个,依赖的文件 command: 任意的shell命令: 当依赖的文件中,只要有文件修改日期比TARGET的修改日期新,或者TARGET不存 在,就会触发…
.PHONY:clean main:hello.o gcc -o main hello.c hello.o:hello.c gcc -c hello.c clean: rm -f hello.o main --------------------------------------- makefile伪目标 只包含目标,没有任何依赖的目标称为伪目标.上例中clean即为伪目标 使用 .PHONY 将  clean 声明为伪目标 ----------------------------------…
错误情况1:makefile:5: *** 遗漏分隔符 . 停止 原因:具体的编译动作,开头不可以有空格,留白是由 按tab键形成的. 解决方法:去掉空格,改为tab键后,再执行make命令,成功. 错误情况2:(.eh_frame+0x12): undefined reference to `__gxx_personality_v0' 错误原因:是因为你用gcc编译.cpp文件.按系统默认.cpp文件是c++的文件格式解决方法: 方法1. gcc -o t t.cpp -lstdc++ //-…
[注]:文中所指手册皆为GNU make Version 4.1 1.make的一般特性 1.1.Makefiles的构成 Makefiles包含五种元素: 显式规则(explicit rules), 隐式规则(implicit rules), 变量定义(variable definitions),指令(directives), 和注释(comments).其中没有提到函数,函数应该归于变量之中吧. 显式规则:指导何时和怎样更新一个或多个文件(targets). 显式规则 隐式规则 1.2.ma…
最近在安装caffe,因为过程繁琐,而且不同的作者给出了不同的安装教程,鱼龙混杂,所以做了个简单的整理. 基本安装方法在下面博客上面都有详细介绍,不过不同版本的硬件适配不同版本的软件,所以安装的时候一定要注意.有caffe需求的可以参考下,因为涉及到系统的安装,为了避免格错盘,重要资料一定要些备份好.安装比较繁琐,没有需求的最好暂时不要花精力在这个上面. 主要参考**http://blog.sciencenet.cn/blog-1583812-841855.html**http://ouxiny…
转载自:http://www.cnblogs.com/wang_yb/p/3990952.html 1. Makefile 简介 Makefile 是和 make 命令一起配合使用的. 很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之间的依赖关系不知会多复杂. Makefile的组织流程的能力如此之强, 不仅可以用来编译项目, 还可以用来组织我们平时的一些日常操作. 这个需要大家发挥自己的想象力. 本篇博客是基于 {精华} 跟我一…
首先安装一些辅助的软件或者说是依赖的关系包. 1.安装libxml2: libxml是一个用来解析XML文档的函数库.它用C语言写成, 并且能为多种语言所调用,例如C语言,C++,XSH.C#, Python,Kylix/Delphi,Ruby,和PHP等.Perl中也可以使用XML::LibXML模块.它最初是为GNOME开发的项目,但现在可以用在各种各样的方面.libXML 代码可移植性非常好,因为它基于标准的ANSI C库, 并采用MIT许可证. yum install -y libxml…