
Makefile
文章平均质量分 72
Decisiveness
这个作者很懒,什么都没留下…
展开
-
GCC compilation options
From: http://yulinlu.blog.163.com/blog/static/588156982010724180248/gcc/g++在执行编译工作的时候,总共需要4步 1.预处理,生成.i的文件[预处理器cpp] 2.将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs] 3.有汇编变为目标代码(机器代码)生成.o的文件[汇编器as]转载 2015-03-15 17:05:47 · 725 阅读 · 0 评论 -
mconf.c:(.text+0x744): undefined reference to `stdscr' 当make menuconfig时
aspirs@aspirs-virtual-machine:/work/linux-3.0.86$ make menuconfig HOSTLD scripts/kconfig/mconfscripts/kconfig/mconf.o: In function `show_help':mconf.c:(.text+0x744): undefined reference to `st转载 2015-11-22 21:18:18 · 3645 阅读 · 0 评论 -
编译Linux kernel时设置交叉编译器
在默认情况下,内核构建系统默认内核是本地编译,即编译的内核是运行在与宿主系统相同的体系架构上。如果是为其他的架构编译内核,即交叉编译,我们需要设置两个变量:ARCH和CROSS_COMPILE。其中:ARCH指明目标体系架构,即编译好的内核运行在什么平台上,如x86、arm或mips等。CROSS_COMPILE指定使用的交叉编译器的前缀。对于我们的交叉工具链来说,其前缀是i686转载 2015-11-22 21:46:27 · 5040 阅读 · 0 评论 -
makefile中CROSS_COMPILE ?= $(CONFIG_CROSS_COMPILE:"%"=%)什么意思
下面内容来自百度知道:http://zhidao.baidu.com/link?url=Gi4YXjeKjht31bQO5XpJewVLbM8eA8zidHYadGDnT4-MHO6NNZMbdHWX3aJaAGJ9bn7Ko6-OYzYnRrIOl_sgcrfd7VqNQhVcIYu4JnN9ww7在linux2.6.39内核中,Makefile中196行处 CROSS_CO转载 2015-11-22 21:52:39 · 4341 阅读 · 0 评论 -
example of Makefile to compile a c source file
example of Makefile to compile a c source file****************************************************************************************modify_time: modify_time.o gcc -o modify_time modify_原创 2016-02-20 14:48:29 · 442 阅读 · 0 评论 -
由于Ubuntu系统时间早于Windows系统时间造成的编译问题(使用beyond compare同步两个平台的文件)
由于Ubuntu系统时间早于Windows系统时间造成的编译问题(使用beyond compare同步两个平台的文件)在Windows系统下修改了某一个c文件,通过beyond compare文件拷贝的方式将这个修改的文件整体拷贝至Ubuntu下的对应目录下。执行代码编译,结果是在Windows下所做的修改没有被编译进去。原因是将修改的文件拷贝至Ubuntu下时文件的修改时间是Wind原创 2016-02-20 15:22:37 · 1000 阅读 · 0 评论 -
多文件目录下makefile文件递归执行编译所有c文件(小例子1)
多文件目录下makefile文件递归执行编译所有c文件首先说说本次嵌套执行makefile文件的目的:只需make根目录下的makefile文件,即可编译所有c文件,包括子目录下的。意义:自动化编译行为,以后编译自己的c文件时可把这些makefile文件直接复制到相应目录即可方便编译出所有文件。这些makefile文件是通用的,只需根据自己的工程情况改动少许内容即可。下面会说。总体转载 2015-05-23 20:43:05 · 3280 阅读 · 1 评论 -
Makefile 使用总结(个人觉得不错)
原文链接:http://www.cnblogs.com/wang_yb/p/3990952.html1. Makefile 简介Makefile 是和 make 命令一起配合使用的.很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之间的依赖关系不知会多复杂.Makefile的组织流程的能力如此之强, 不仅可以用来编译项转载 2016-03-23 16:09:45 · 1627 阅读 · 0 评论 -
Makefile VPATH和vpath的使用
开始接触Makefile已经有好几个月了,最近想好好学习学习但是一个简单的问题就卡壳了很简单的一个问题|-- Makefile|-- include| `-- hello.h`-- src |-- hello.cpp `-- main.cp首先是Makefile 文件和include文件夹还有src文件夹在同一个目录下头文件hello.h在inc转载 2016-03-24 13:33:19 · 832 阅读 · 0 评论 -
Makefile 函数大全
目录(?)[-]文章摘自wwwgnuorg点击此处查看原页面1 Function Call Syntax2 Functions for String Substitution and Analysis3 Functions for File Names4 Functions for Conditionals5 The foreach Function6 The call Function7转载 2016-03-24 14:02:35 · 498 阅读 · 0 评论 -
makefile中的自动化变量
自动化变量$@代表规则中的目标文件名。如果目标是一个文档(Linux中,一般称.a文件为文档),那么它代表这个文档的文件名。在多目标的模式规则中,它代表的是哪个触发规则被执行的目标文件名。$%规则的目标文件是一个静态库文件时,代表静态库的一个成员名。例如,规则的目标是“foo.a(bar.o)”,那么,“$%”的值就为“bar.o”,“$@”的值为“foo.a”。如果目标不是函数库转载 2016-03-24 17:50:23 · 498 阅读 · 0 评论 -
makefile函数
一、foreach和calltest_var0 = welcome come to Shenzhen!test_var1 = "* start" $(1) $(2) "end!"result0 = $(call test_var1, "gzsh0","gzsh1")result1 = $(foreach i,$(test_var0),$(i)_gzsh)result2 = $(原创 2016-03-24 13:07:26 · 706 阅读 · 0 评论 -
Makefile 的函数-1
Makefile Functionmake 提供了很多函数(包括内置函数和自定义的函数)。这些函数为我们处理变量、文本内容、文件名、命令提供了方便。我们在需要的地方调用函数来处理指定的文本(参数)。函数在调用的地方被替换成它的处理结果。函数的调用语法make 内置函数的调用语法类似于变量的引用。语法格式如下: $(function arguments)转载 2015-07-05 19:30:27 · 725 阅读 · 0 评论 -
静态模式makefile中$(cobjs): $(obj)/%.o: $(src)/%.c
4.12 静态模式静态模式规则是这样一个规则:规则存在多个目标,并且不同的目标可以根据目标文件的名字来自动构造出依赖文件。静态模式规则比多目标规则更通用,它不需要多个目标具有相同的依赖。但是静态模式规则中的依赖文件必须是相类似的而不是完全相同的。4.12.1静态模式规则的语法首先,我们来看一下静态模式规则的基本语法:TARGETS ...: TA转载 2015-06-28 15:12:46 · 3639 阅读 · 0 评论 -
arm-linux-gcc 4.3.3 Illegal instruction 及制作文件系统(arm-linux-gcc option -print-libgcc-file-name)
4.3.3这个编译器是带EABI的,也就是说具有突出的浮点预算性能,就是Float Point Performance,它使用Vector Float Point(矢量浮点),因此可以极大提高涉及到浮点运算的程序 。而现在手头既有6410又有2410,这个EABI对这两个处理器编译出来的程序有什么不同么?一、预先了解它会做什么首先我们就先弄清楚它是什么:arm-linux-gcc转载 2015-03-16 12:01:53 · 1305 阅读 · 0 评论 -
Makefile 中:= ?= += =的区别
在Makefile中我们经常看到 = := ?= +=这几个赋值运算符,那么他们有什么区别呢?我们来做个简单的实验新建一个Makefile,内容为:ifdef DEFINE_VRE VRE = “Hello World!”elseendififeq ($(OPT),define) VRE ?= “Hello World! First!”endif转载 2015-03-04 21:30:58 · 288 阅读 · 0 评论 -
Makefile中常用的函数(二)
Makefile中常用的函数(二)$(wordlist ,,) 名称:取单词串函数——wordlist。 功能:从字符串中取从开始到的单词串。和是一个数字。 返回:返回字符串中从到的单词字串。如果比中的单词数要大,那么返回空字符串。如果大于的单词数,那么返回从开始,到结束的单词串。 示例: $(wordlist 2, 3, foo bar转载 2015-03-09 23:26:28 · 428 阅读 · 0 评论 -
make distclean install ect.
make clean仅仅是清除之前编译的可执行文件及配置文件。 而make distclean要清除所有生成的文件。Makefile在符合GNU Makefiel惯例的Makefile中,包含了一些基本的预先定义的操作:make根据Makefile编译源代码,连接,生成目标文件,可执行文件。make clean清除上次的make命令所产生的obj转载 2015-03-17 16:55:48 · 569 阅读 · 0 评论 -
makefile echo 用法(把echo输出信息当作一个目标)
在makefile里面添加说明make报错误:makefile:13: *** missing separator. Stop.首先我是想在MAKEFILE里面添加几行命令,这些命令不是用来编译的,而仅是用来在执行MAKEFILE的时候,最先显示出来,类似于帮助一样。如下:@echo "MAKEFILE说明:"@echo "此MAK转载 2015-03-10 13:47:59 · 34840 阅读 · 0 评论 -
Makefile中常用的函数(一)
在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能。make所支持的函数也不算很多,不过已经足够我们的操作了。函数调用后,函数的返回值可以当做变量来使用。一、函数的调用语法函数调用,很像变量的使用,也是以“$”来标识的,其语法如下:$( )或是${ }这里,就是函数名,make支持的函数不多。是函数的参数转载 2015-03-09 23:23:23 · 452 阅读 · 0 评论 -
makefile里经常看到sed指令
问题这里,我们给出了一个模式规则来产生[.d]文件: %.d: %.c @set -e; rm -f $@; \ $(CC) -M $(CPPFLAGS) $; $@.$$$$; \ sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' ; $@; \转载 2015-03-10 11:43:10 · 4130 阅读 · 0 评论 -
Makefile中的wildcard & patsubst的用法
在Makefile规则中,通配符会被自动展开。但在变量的定义和函数引用时,通配符将失效。这种情况下如果需要通配符有效,就需要使用函数“wildcard”,它的用法是:$(wildcard PATTERN...) 。在Makefile中,它被展开为已经存在的、使用空格分开的、匹配此模式的所有文件列表。如果不存在任何符合此模式的文件,函数会忽略模式字符并返回空。需要注意的是:这种情况下规则中通配符转载 2015-03-10 19:28:25 · 682 阅读 · 0 评论 -
Kernel编译和链接中的linker script语法详解
第一篇博客:最近在研究uboot,红色部分为我加上的注解 转载地址:http://blog.chinaunix.net/space.php?uid=23373524&do=blog&cuid=2324182lds文件与scatter文件相似都是决定一个可执行程序的各个段的存储位置,以及入口地址,这也是链接定位的作用。U-boot的lds文件说明如下:转载 2015-05-09 11:41:37 · 1275 阅读 · 0 评论 -
Makefile编译目录下多个文件(简单例子0)
今天终于学会了编写makefile,使之可以编译目录下所有c\cpp文件。编译多个c文件一般有两个功能,一个是每个c文件都有main函数,就是说每个c文件的可执行文件是独立的,各自是各自的;第二个是多个c文件用来编译成一个可执行文件。首先说第一个,内容如下,这个makefile是为了编译opencv代码的。[cpp] view plaincopy转载 2015-05-23 20:40:12 · 764 阅读 · 0 评论 -
Makefile依赖关系中的竖线“|”
近日在阅读一个Makefile的时候发现一个依赖关系中有竖线“|”的写法,网上搜索无果,于是自己查看了一下makefile的info文件,其中解释如下:[java] view plain copy print?target : prerequisites [TAB]command1 [TAB]command2 [TAB]... [TAB]commandN转载 2016-08-13 15:47:46 · 3154 阅读 · 0 评论