makefile基本语法】的更多相关文章

 3 Makefile书写规则 -------------------------------------------------------------------------------- 规则包含两个部分,一个是依赖关系,一个是生成目标的方法. 在Makefile中,规则的顺序是很重要的,因为,Makefile中只应该有一个最终目标,其它的目标都是被这个目标所连带出来的,所以一定要让make知道你的最终目标是什么.一般来说,定义在Makefile中的目标可能会有很多,但是第一条规则中的目标…
什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂.这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义.特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力. 因为,makefile关系到了整个工程的编译规则.一…
多文件编程的小例子功能:在main.c里面调用其他两个源文件里面的函数,然后输出字符串. 1.main.c    #include"mytool1.h"#include"mytool2.h"int main(int argc,char* argv[]){           mytool1_printf("hello.");           mytool2_print("hello");           return…
Makefile的作用 如果没有Makefile,每次修改源代码后,如果要重新编译代码,都要输入编译命令,当源代码很多时,效率很底下. 基本格式 target: componsnts TAB rule main: main.o mytool1.o mytool2.o gcc -o main main.o mytool1.o mytool2.o Makefile规则 Makefile由一系列规则组成,规则的结构如下 目标文件 :依赖文件 命令1 命令2 ... 命令n 三个有用的变量 $@ 目标文…
1.. specify the directores , i not specified , search current directory put every folder into a listSRCDIRS := ifeq ($(SRCDIRS),)SRCDIRS := $(shell find $(SRCDIRS) -type d) 2.. addprefix:作用是给每个string添加前缀,string之间用空格隔开.$(addprefix prefixstr, string1 s…
原文链接:http://www.orlion.ga/816/ 一.基本规则 对于一个拥有多个文件的c项目,编译时可能是这样的指令: gcc main.c stack.c -o main 如果编译之后又对stack.c进行了修改,则又要重新把所有的源文件编译一遍,即使main.c和那些头文件都没有修改也要跟着重新编译,一个大型项目往往上千个源文件组成,全部编译要几个小时,只改一个源文件就要重新编译显然不合理.如果是一下的编译方式会好一些: gcc -c main.c gcc -c stack.c…
非常酷的网站: http://yige.org/cpp/defined_data_types.php 在Linux下有一个目录/proc/$(pid),这个目录保存了进程号为pid的进程运行时的所有信息,其中有一个文件maps,它记录了程序执行过程中的内存空间的情况.编译运行上面的代码. 内存   http://blog.csdn.net/ljianhui/article/details/21666327 程序: http://blog.163.com/zhoumhan_0351/blog/st…
Makefile文件语法 行解析:命令按行解析 命令行的行首字符为Tab键,其他行的行首字符不得为Tab键,但可以使用多个空格缩进 换行:命令太长时,行尾使用"\"换行 注释:行首字符为"#"的文本行 关闭回显:在行首字符后和命令前添加"@" 未关闭回显时,make会首先回显(打印)命令,然后执行该命令 通常仅在注释和纯显示的echo命令前使用此功能 include filename:包含其他文件 处理模式与c/c++类似 行首加"-&…
转载自:http://www.cnblogs.com/wang_yb/p/3990952.html 1. Makefile 简介 Makefile 是和 make 命令一起配合使用的. 很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之间的依赖关系不知会多复杂. Makefile的组织流程的能力如此之强, 不仅可以用来编译项目, 还可以用来组织我们平时的一些日常操作. 这个需要大家发挥自己的想象力. 本篇博客是基于 {精华} 跟我一…
前言 一 年轻的冲动 二 学习曲线 1 Makefile基本语法 2 bash基础 3 world 三 编译过程概述 1 主机预装工具 2 编译host工具 3 编译交叉工具链 4 编译内核模块 5 编译ipk 6 安装ipk 7 编译内核 8 合成 尾声 前言 又到了成胖子每周一博的时间了,本周是第三周. 本周我们继续了解openwrt的编译过程,如果还有没写过简单ipk或者编译过openwrt的朋友,可以参见我之前的博客或者网上的其他文章 一 年轻的冲动 为什么我在学习的过程中,有先学习整个…
1. Makefile 简介 Makefile 是和 make 命令一起配合使用的. 很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之间的依赖关系不知会多复杂. Makefile的组织流程的能力如此之强, 不仅可以用来编译项目, 还可以用来组织我们平时的一些日常操作. 这个需要大家发挥自己的想象力. 本篇博客是基于 {精华} 跟我一起写 Makefile 而整理的, 有些删减, 追加了一些示例. 非常感谢 gunguymadman…
转自:http://www.cnblogs.com/wang_yb/p/3990952.html 1. Makefile 简介 Makefile 是和 make 命令一起配合使用的. 很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之间的依赖关系不知会多复杂. Makefile的组织流程的能力如此之强, 不仅可以用来编译项目, 还可以用来组织我们平时的一些日常操作. 这个需要大家发挥自己的想象力. 本篇博客是基于 {精华} 跟我一起…
刚开始用make的时候,以为makefile中名字叫做main的target就是make默认执行的target(中文翻译叫做标的(di,四声),下面统一称呼为标的),然后曾经很天真地犯过这样的错误,就一个.c文件(名字叫做main.c),功能是打印helloworld,然后我写了这样的makefile来编译: main: gcc -o main main.c 结果第一次make命令能编译,后面如果还想再用make命令编译的话,就会出现这样的错误: 即使更改了main.c中的代码,也会出现这样的错…
Copy:http://graybull.is-programmer.com/posts/37758.html 本文给出万能Makefile的具体实现,以及对其中的关键点进行解析.所谓C++万能Makefile,即可编译链接所有的C++程序,而只需作很少的修改. 号称万能Makefile,一统江湖.我对原版的Makefile做了些修改.首先揭开它的庐山真面目: #################################################### # Generic makef…
前面将contiki的makefile框架都理了下,这篇就以cc2530为收篇吧,也即makefile分析就该到此为止了. contiki/examples/cc2530dk 打开Makefile如下图: 第一行的 "CONTIKI_PROJECT"变量依赖于该目录下的  blink-hello.c  hello-world.c  sensors-demo.c  timer-test.c 4个C源文件 第五行的"CONTIKI"变量被定义成 contiki/ 路径,…
Contiki Makefile.include 笔记 约定:  makefile 包括Makefile.Makefile.xxx,并不单指Makefile 不对makefile的语法进行分析,仅仅关注几个需要点. 首先要说明,Makefile.include是被用户的工程目录下的"Makefile"      include之,这个是必须要做的. Makefile.include 从上到下,顺序检索. 关注点一: 最开始,编译系统会检查用户是否定义了 contiki 源码根目录.检查…
Makefile.am详解 实战Makefile.amMakefile.am是一种比Makefile更高层次的规则.只需指定要生成什么目标,它由什么源文件生成,要安装到什么目录等构成.表一列出了可执行文件.静态库.头文件和数据文件,四种书写Makefile.am文件个一般格式. 表 1Makefile.am一般格式 对于可执行文件和静态库类型,如果只想编译,不想安装到系统中,可以用noinst_PROGRAMS代替bin_PROGRAMS,noinst_LIBRARIES代替lib_LIBRAR…
Easymake 使用说明 介绍 Easymake 是一个在linux系统中 C/C++ 开发的通用 makefile.在一个简单的 C/C++ 程序中使用 easymake,你甚至可以不写一行 makefile 代码来生成目标文件. Easymake 包含以下功能: 自动扫描 C/C++ 源文件. 自动生成和维护依赖关系,加快编译时间. 支持简单的单元测试,可以很方便地管理多个程序入口(main 函数). 完美地支持 VPATH 变量. 我将在后面的例子中一步步地向你展示如何使用 easyma…
现在我们的Makefile写成这样: all: main main: main.o stack.o maze.ogcc $^ -o $@ main.o: main.h stack.h maze.hstack.o: stack.h main.hmaze.o: maze.h main.h clean:-rm main *.o .PHONY: clean按照惯例,用all做缺省目标.现在还有一点比较麻烦,在写main.o.stack.o和maze.o这三个目标的规则时要查看源代码,找出它们依赖于哪些头…
本文介绍了在 linux 系统中,通过 Gnu autoconf 和 automake 生成 Makefile 的方法.主要探讨了生成 Makefile 的来龙去脉及其机理,接着详细介绍了配置 Configure.in 的方法及其规则. 2 评论: 杨 小华, Linux 内核开发工程师, 自由撰稿人 2006 年 9 月 21 日 内容 引子 无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令.不管是自己进行项目开发还是安装应用软件,我们都经常要用到make或 make…