Makefile

makefile点滴整理 2013-11-09

makefile描述规则: target...:prerequisites... command... 其中target为目标文件,prerequisites为依赖文件,command为生成规则"-"号: 在makefile命令前加一个减号,表示不管命令是否出错,都继续执行后面的操作自动化变量: $@表示规则中目标集合: $

跟我一起Makefile.No1 2013-05-27

跟我一起Makefile.No1
1. Makefile是什么? Makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令.2. Makefile的好处 Makefile带来的好处就是--"自动化编译",一旦写好,只需要一个make命令,整个 ...

Linux中subst是字符串处理函数 2013-05-15

Makefile里的subst 用法是$(subst FROM,TO,TEXT),即将TEXT中的东西从FROM变为TOMakefile中的字符串处理函数 格式: $(subst ;,;,;) 名称:字符串替换函数--subst. 功能:把字串;中的;字符串替换成;. 返回:函数返回被替换过后的字符串. 示例: $(subst a,the,There is a big tree), 把"There is a big tree"中的"a"替换成"the&qu

shell、makefile中的隐含变量 2013-05-14

变量值 shell中的意义 makefile中的意义$@ 以"参数1""参数2"形式保存所有参数 目标的完整名称 $? 上一条命令或函数的返回码 修改日期比目标创建晚的所有依赖(空格分开) $* 以"参数1参数2"形式保存所有参数 不包含扩展名的目标文件名称$# 参数的个数 ------ $! 上个命令的PID -----$N 第N个参数(N>=1) -----$0 当前脚本名字(UID) ----- $$ 当前进程PID ----- $%

makefile中,:=和=的区别 2012-08-28

当它们的右值是具体的值时,它们没有区别:当它们的右值是变量时,:=相当于引用,=还是复制.实例:a:=1 b:=$(a) c=$(a) a:=2 test: @echo a=$(a) b=$(b) c=$(c) Result: a=2 b=1 c=2

makefile中的wildcard与patsubst函数 2012-08-28

makefile 里的函数跟它的变量很相似--使用的时候,你用一个 $ 符号跟开括号.函数名.空格后跟一列由逗号分隔的参数.最后用关括号结束($(functionName parameter1,parameter2...parameterN)).1.'wildcard' 函数: 在 GNU Make 里有一个叫 'wildcard' 的函数,它有一个参数,功能是展开成一列所有符合由其参数描述的文件名,文件间以空格间隔.你可以像下面所示使用这个命令: SOURCES = $(wildcard *.

斯坦佛编程教程-Unix编程工具二 2012-07-09

第二节-make当项目变得越来越大的时候,还用gcc命令来编译项目就没有那么吸引人了.make工具能够使编译和链接全自动化.在使用make工具的时候,程序员只需设置好项目所包含的文件和怎样去搭配好他们,接下来的make工具会自动完成编译和链接的工作.Make能够加速你的编译过程,因为假如你有十个.c的源文件但你只变动了一个文件而其它的九个文件在之前编译过那么它会知道在链接之前只需重新编译那一个单独的文件.Make有一些复杂的特性,但用它来作一些简单的事情是非常简单的.运行make进入到你的项目目

Ubuntu中配置cocos2d-x 2012-07-03

最近想找一个游戏游戏引擎来研究一下,首选当然事是cocos2d-x了.cocox2d和cocos2d-x不是同一个东西,前者是用python写的,开发语言也是python,后者是用c++写的,支持windows,linux,iOS,Android,Html5.cocos2d-x已经更新到2.0了,但新的版本并不支持linux,所以这里还是选择1.0的版本.去官网上面把源码包下载下来,这里下载到的版本是cocos2d-1.0.1-x-0.12.0.将其解压.查看根目录下面的build-linux.

Makefile:1:***遗漏分隔符。停止。 2012-03-10

MakefileVPATH=src:includeall:project.PHONY:allproject:main.o fun1.o fun2.o gcc main.o fun1.o fun2.o -o project -gmain.o:main.c gcc -c -Iinclude -o $@ $^ -gfun1.o:fun1.c gcc -c -Iinclude -o $@ $^ -gfun2.o:fun2.c gcc -c -Iinclude -o $@ $^ -gtar: tar cv

RTEMS4.9.4CSB337的skyeye仿真环境的建立 2011-01-04

(原创,欢迎转载,但请注明出处,谢谢.)因为我一直有自己的开发板,公司有这样的条件,并且开发的代码很多与外设有关系,基本没法用软件仿真,所以基本没用到skyeye.最近忙着写rtems的文章,有朋友问我,怎样用rtems跑skyeye.去官网上一看,他们的确也用skyeye跑rtems,而且工作的很好.于是自己也下了个skyeye进行仿真,发现过程非常曲折,只是简单的跑个 hello world 可以,跑稍微复杂一点的代码,就不行了.自己一点点把这个问题解决了,把文章写出来,和大家分享.目前,网

RTEMS的AT91SAM9260移植(9):HelloWorld 2010-12-28

内核编译成功后,下一步我们就开始弄Hello World,完成这个工作,首先我们去官方网站下载测试程序包.http://www.rtems.org/ftp/pub/rtems/4.9.4/class-examples-4.9.4.tar.bz2解压缩,以后我们进入 class-examples-4.9.4 的文件夹.输入以下命令cd hello_world_cexport RTEMS_MAKEFILE_PATH=/opt/rtems-4.9/arm-rtems4.9/at9260make cle

Makefile文件的相关知识2 2010-11-01

好吧,还是先来看几个例子吧:clean:rm -f *.o上面这个例子我不不多说了,这是操作系统Shell所支持的通配符.这是在命令中的通配符.print: *.clpr -p $?touch print上面这个例子说明了通配符也可以在我们的规则中,目标print依赖于所有的[.c]文件.其中的“$?”是一个自动化变量,我会在后面给你讲述.objects = *.o上面这个例子,表示了,通符同样可以用在变量中.并不是说[*.o]会展开,不!objects的值就是“*.o”.Makefile中的变

基于mini2440的QT程序移植 2010-07-09

利用QT_Creator来编写QT程序,建立一个空工程,然后逐步添加.h和.cpp,主要利用Creator的自动补齐和手册功能方便,然后保存工程,进入工程目录,把源文件和头文件拷贝到另一个文件夹里面,参考hello的.pro文件来编写这个程序的.pro 文件,.pro 文件格式如下CONFIG += qtopiaappCONFIG -= buildQuicklaunchDESTDIR = $(QPEDIR)/binHEADERS = hello.hSOURCES = hello.cppSOURC

自己写的vivi的Makefile注释 2009-02-19

以下是自己写的vivi的Makefile注释,有错的地方还请多多指教:# 这几个都表示版本号,表示为0.1.4VERSION = 0PATCHLEVEL = 1SUBLEVEL = 4VIVIRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)#定义目标系统的结构体系为arm#其中 := 表示给变量赋值并立即展开生效:= 表示延迟生效.ARCH := arm#shell函数的引用$$ -x表示可执行CONFIG_SHELL := $(shell if [ -x

例解autoconf和automake生成Makefile文件 2008-08-28

文档选项打印本页将此页作为电子邮件发送样例代码级别: 初级杨 小华 (normalnotebook@126.com), Linux 内核研究员苏 春艳, 在读研究生2006 年 9 月 21 日本文介绍了在 linux 系统中,通过 Gnu autoconf 和 automake 生成 Makefile 的方法.主要探讨了生成 Makefile 的来龙去脉及其机理,接着详细介绍了配置 Configure.in 的方法及其规则.回页首normalnotebook@126.com).回页首回页首回页

学习写Makefile 2008-07-16

什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂.这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义.特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力. 因为,makefile关系到了整个工程的编译规则.一

跟我一起学写Makefile-Lesson10 2007-08-30

[url]http://www.chinaunix.net[/url] 作者:陈皓 使用make更新函数库文件 ----------- 函数库文件也就是对Object文件(程序编译的中间文件)的打包文件.在Unix下,一般是由命令"ar"来完成打包工作. 一.函数库文件的成员 一个函数库文件由多个文件组成.你可以以如下格式指定函数库文件及其组成: archive(member) 这个不是一个命令,而一个目标和依赖的定义.一般来说,这种用法基本上就是为了"ar"命令来

跟我一起学写Makefile-Lesson5 2007-08-30

[url]http://www.chinaunix.net[/url] 作者:陈皓书写命令 ---- 每条规则中的命令和操作系统Shell的命令行是一致的.make会一按顺序一条一条的执行命令,每条命令的开头必须以[Tab]键开头,除非,命令是紧跟在依赖规则后面的分号后的.在命令行之间中的空格或是空行会被忽略,但是如果该空格或空行是以Tab键开头的,那么make会认为其是一个空命令. 我们在UNIX下可能会使用不同的Shell,但是make的命令默认是被"/bin/sh"--UNIX的

使用Automake,Autoconf生成Makefile 2007-03-29

在Unix上写过程序的人尤其是用 C 来开发程序的人一般都遇到过 Makefile,用 make 来开发和编译程序的确很方便,可是要写出一个Makefile就不那么简单了.GNU Make 那份几百页的文件,让许多人害怕.当然,现在关于make的文档比较多,不过写一个Makefile总是一件很烦人的事情,GNU Autoconf 及 Automake 这两个软件就是帮助程序开发者轻松产生Makefile 文件的.现在的GNU软件如Apache, MySQL Minigui等都是利用Autocon
一周排行
  • 目  录1 测试目的... 32 测试方案... 32.1 测试环境... 32.2 参数配置... 32.2.1 schema.xml的调整... 32.2.2 solrconfig.xml的调整... 42.2. ...
  • using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading ...
  • 返回一个整型数组中最大子数组的和
    组员:刘伟 李晨(http://www.cnblogs.com/jiajun1/  ) 1 ...
  • 1. CHAR(n)固定长度的字符串,长度必为n,不足的,oracle会帮你添上空格2. VARCHAR2(n)可变长度的字符串,最大长度为n3.NUMBER(p,s)数字,p代表所有有效数字的位数,s代表小数点后的 ...
  •   这学期,学院开设了软件工程这门课程,但是对这门课程我有许多疑惑.  首先,我想知道学习软件工程究竟是学什么,对我们以后有什么帮助?学习这门课程之后我们是否比不学这门课的人在开发软件过程中更具有优势,如果有,体现在 ...
  • 1.统计/usr/bin目录下的文件个数[root@localhost ~]# ls /usr/bin | wc -l 1306 [root@localhost ~]#2.取出当前系统上所有用户的SHELL,要求,每 ...
  • 织梦网采集
      来自为知笔记(Wiz)
  • 2008软考网络工程师考试大纲 1. 考试要求 (1) 熟悉计算机系统的基础知识: (2) 熟悉网络操作系统的基础知识: (3) 理解计算机应用系统的设计和开发方法: (4) 熟悉数据通信的基础知识: (5) 熟悉系 ...
  • 近几天,我在帮生产部门整理生产工艺和数据统计分析!前期为了想整理一个生产流程卡,参考了ISO管理的很多东西,为了能从中吸取经验和管理思想,但是,做来做去,发现不行.虽说有一个框架思路,但是没有具体的内容,框架也只能是 ...
  • #mail server configuration $smtpServer = "smtp.XXXX.com" $smtpuser = "XXXX@XXXX.com" $sm ...