makefile编写入门教程
多级目录makefile,静态库
在lib 目录下编译需要生成动态库的文件,生成动态库,并安装到系统的标准库中,供 程序调用。具体步骤如下:(1) 编写Makefile.am 文件 AUTOMAKE_OPTIONS=foreign lib_LTLIBRARIES=libhello.la libhello_la_SOURCES=test.c 这里lib_LTLIBRARIES 的意思是生成的动态库,然后指定动态库依赖的源文件 test.c...
makefile 文件的组成内容?
隐式规则:由于make工具有自动推导的功能,所以在编写makefile文件的时候可以利用该规则,简略地书写makefile。再由 make 工具本身自动推导需要使用的规则。变量的定义: make工具支持变量的定义,这些变量往往都是字符串,因此makefile中的变量更像是C语言中的宏。当makefile被执行时,其中的变量都会被展开到...
编写一个makefile文件主要包含哪些内容
一、Makefile里有什么?Makefile里主要包含了五个东西:显式规则、隐晦规则、变量定义、文件指示和注释。1、显式规则。显式规则说明了,如何生成一个或多的的目标文件。这是由Makefile的书写者明显指出,要生成的文件,文件的依赖文件,生成的命令。2、隐晦规则。由于我们的make有自动推导的功能,所以...
linux中用C语言编写完模块后怎么编写makefile文件?用到什么命令?以什么...
vi Makefile #打开vi编辑器 在编辑器里输入以下内容:当只有一个文件需要编译的时候 finame:filename.c #冒号前面是要编译成的目标文件(可以任意命名),后面是你编写的C文件 gcc -o filename filename.c #gcc前面是按Tab制表符 filename:filename.c 是指filename文件的生成要依赖filename.c...
如何自己编写Makefile
什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能...
在什么软件下可以编写makefile,比如编写c语言可以在VC6.0下编写,那么m...
vc6直接就可以直接导出你正在编辑的工程的make文件。菜单:Project->Export Makefile...打开导出makefile对话框,选择你要导出makefile的工程,点OK,就会在你工程目录下生成工程名.mak文件,如图:你可以用文本编辑器直接修改.mak文件,但一般情况下没必要自己去修改,直接在vc6里配置好工程的相关信息,...
<求助>MAKEFILE中LIBS和INCLUDES的编写
并不是这个 -c 是编译加的,而是整个gcc -c -o mycrp.o mycrp.c 都是Makefile自动推导出来的。你的程序要生成test,make工具就要找test由哪几个文件生成,你写的是${OBJS} ${LIBS} ,也就是说make会先去生成mycrp.o。但是mycrp.o怎么生成呢?你的Makefile中并没有写,make工具在当前...
C和C++混编的makefile编写
makefile 不区分c和c++,只要你编译给的参数对了就可以了,比如c你用gcc编译,那么c++你可以用g++就好了,makefile实际上并不知道你是编译c还是c++
linux系统下这个makefile 怎么只能编译一个文件
当你不指定make的目标,也就是光输入make,那么它默认只构建第一个目标,也就是l2.o 所以你应该在makefile最开始的地方加一句:all: l1.o l2.o l3.o 这种方法还是不够好,建议另一种方法,也就是%规则:OBJS:=l1.o l2.o l3.o all: $(OBJS).o: %.c gcc -c $< -o 注意上一行...
linux上的makefile怎么使用?
一、Makefile的规则 在讲述这个Makefile之前,还是先来粗略地看一看Makefile的规则。target ... : prerequisites ...command ...target也就是一个目标文件,可以是Object File,也可以是执行文件。还可以是一个标签 (Label),对于标签这种特性,在后续的“伪目标”章节中会有叙述。prerequisites就是,...
察雅县尼美回答: makefile是Linux下使用gcc编译源程序时,所依赖的规则文件.比如你在编译一个hello.c的源文件,使用gcc编译器,如何编译?生成可执行程序的名字叫什么,都需要在makefile里面定义这个规则.具体教程,可以参考宅学部落(微信公众号):《Makefile工程实践》视频教程,教你从零开始一步一步如何写一个企业项目的Makefile,从小白到专家.
纵素19311966928问: 如何写一个简单的makefile - ?
察雅县尼美回答: 一:makefile 雏形: #makefile的撰写是基于规则的,当然这个规则也是很简单的,就是: #target : prerequisites command//任意的shell 命令 实例如下: makefile: helloworld : main.o print.o #helloword 就是我们要生成的目标 # main.o print.o是生...
纵素19311966928问: 如何写这样的一个makefile - ?
察雅县尼美回答: 相信很多朋友都有过这样的经历,看着开源项目中好几页的makefile文件,不知所云.在日常学习和工作中,也有意无意的去回避makefile,能改就不写,能用ide就用ide.其实makefile并没有想象的那么难写,只要你明白了其中的原理,自己实...
纵素19311966928问: 怎么编写Makefile生成静态库 - ?
察雅县尼美回答: 编写Makefile生成静态库的方法:方法一////////////////////////////////////////////////////////////////// divFIX=/usr LIBDIR=$(divFIX)/lib INCLUDEDIR=$(divFIX)/include#$(DESTDIR) is usally empty. rpmbuild needs it.DESTDIR= CC=gcc CFLAGS= LIBS= INCLUDES= ...
纵素19311966928问: 如何使用makefile? - ?
察雅县尼美回答: make工具,只是一个批处理工具.如果只是使用makefile,那么只要有make.exe这个文件就可以了.make工具会根据makefile里面的信息来编译程序.在makefile里面,一般指定了用什么编译器,用什么程序链接,以及需要那些库的支持,还有一些其它的设置.如果你没有相应的编译工具和库的支持,make会出错的.所以,你必须要先弄清楚,你拿到的c程序,需要什么样的环境才能编译.一般来说,你看看它C头文件和makefile里面的信息就应该能知道.
纵素19311966928问: 如何在linux下写makefile - ?
察雅县尼美回答: 在命令行新建一个文件,名字叫Makefile:touch Makefile 然后用vi打开Makefile 在里面写:test:gcc test.c -o test // 这里自己改文件名字 保存退出 然后执行make命令就行.
纵素19311966928问: makefile:多个目录下makefile 的写法 - ?
察雅县尼美回答: 1、假定.h文件在Header目录里,.c文件在Source目录里,这两个目录文件在Myapp中,Makefile也在Myapp中.2、Makefile如下.---------------------------------------------------------------------------------- all: myapp myapp: main.o b.o c.o gcc -o myapp main.o ...
纵素19311966928问: 如何写Makefile - ?
察雅县尼美回答: hello: hello.o gcc -o hello hello.o hello.o: hello.c gcc -c hello.c clean: rm -f hello *.o *.bak *~这就是最简单的helloworld的makefile有三个目标:hello、hello.o、clean,最上面的那个是默认目标,make不带参数时,找的就是这个目标.目标回溯过程: ...
纵素19311966928问: [Linux]编写一个简单的C语言程序,编写Makefile文件. - ?
察雅县尼美回答: c语言程序:#include <linux/init.h>#include <linux/module.h> MODULE_LICENSE("Dual BSD/GPL"); static int hello_init(void) { printk(KERN_ALERT "Hello, world\n"); return 0; } static void hello_exit(void) { printk(KERN_ALERT "Goodbye, ...
纵素19311966928问: 如何制作一个makefile文件 - ?
察雅县尼美回答: 可以手写 也可以使用工具自动生成.比如使用Autotools、Cmake、Scons\Ant等工具可以自动生成Makefile. 可以参考:Makefile工程实践,这门视频教程,里面都有涉及,从零开始写一个项目的Makefile,到如何使用Autotools工具自动生成Makefile,都有涉及.