makefile文件。批处理文件。】的更多相关文章

makefile文件: NAME=XXX             #要编译的文件名 OBJS=$(NAME).obj              #指定输出的目标文件名 ML_FLAG=/C  /COFF            #编译指令宏 LINK_FLAG=/subsystem:windows            #链接指令宏 $(NAME).exe:$(OBJS)                    #链接命令行 link   $(LINK_FLAG)  $(OBJ) .asm.obj:…
1.1在这之前,我们需要了解程序的编译过程 a.预处理:检查语法错误,展开宏,包含头文件等 b.编译:*.c-->*.S c.汇编:*.S-->*.o d.链接:.o +库文件=*.exe 1.2体验在VC下程序的编译 a.先编译,在链接 b.修改了哪个文件,就单独编译此文件,在链接 c.修改了哪个头文件,就单独编译使用该头文件的源文件,在链接 1.3在linux下实现上述要求 2.编写一个测试的Makefile 2.1直接编译链接 gcc -o test a.c b.c 缺点:改变其中一个文…
1. make工具 利用make工具可以自动完成编译工作,这些工作包括: 如果修改了某几个源文件,则只重新编译这几个源文件 如果某个头文件被修改了,则重新编译所有包含该头文件的源文件 利用这种自动编译可以大大简化开发工作,避免不必要的重新编译.make工具通过一个称为Makefile的文件来完成并自动维护编译工作,Makefile文件描述了整个工程的编译.连接规则. 2. Makefile文件 Makefile描述了整个工程的编译连接规则.Makefile的基本规则为: TARGET...: D…
Makefile文件相当于是一种脚本编程语言,目的是实现自动化编译.编写makefile文件的过程中可以使用变量.控制结构和函数等一般编程语言的特性. Makefile文件的组成内容.makefile文件的书写,makefile文件使用实例. Makefile文件包含:makefile文件一般命名为makefile或者Makefile,make工具能直接识别执行.如果指定makefile文件的话可以用命令$make –f <文件名>来执行,makefile文件中也可以用include关键字包含…
一.相关概念的介绍 什么是 Makefile?怎么书写 Makefile?竟然有工具可以自动生成 Makefile?怎么生成啊?开始的时候,我有这么多疑问,所以,必须得先把基本的概念搞个清楚. 1.Makefile makefile用来定义整个工程的编译规则.一个工程中的源文件计数,其按类型.功能.模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚…
linux环境下,当项目工程很大的时候,编译的过程很复杂,所以需要使用make工具,自动进行编译安装,但是手写makefile文件比较复杂,所幸在GNU的计划中,设计出了一种叫做Autoconf/Automake的工具,用来自动生成makefile文件,为编译和安装程序提供了一个方便快捷的入口. 一.首先检查是否安装了autotools工具 使用which命令    aclocal    autoscan    autoconf    autoheader    automake…
在安装thrift的时候,解压包进入目录,执行命令: ./configure 之后,发现某些包没有安装,导致configure到一半的时候退出,接着make发现没有makefile文件.估计是我系统安装的时候除了点叉子. make:*** No targets specified and no makefile found.Stop. 解决方法: sudo apt-get update sudo apt-get upgrade sudo apt-get install gcc build-ess…
一.Makefile文件编写 http://www.cnblogs.com/majiangjiang/articles/3218002.html 可以看下上面的博客,总结的比较全了,在此不再复述 二.OpenWRT驱动开发步骤 http://www.360doc.com/content/14/0319/20/5345087_361967240.shtml 这里有比较详细的介绍,发现都是别人总结过的东西,在此只是做下记录,方便以后查找,不再重复造车轮了.…
第一章.概述什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional(专业)的程序员,makefile还是要懂.这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义.特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力.因为,makefile关系到了整个…
使用automake等命令自动生成Makefile文件   Linux下编程时,为了方便编译,往往使用Makefile文件自动完成编译,但是Makefile文件本身的书写十分复杂,规则很多.好在Linux为我们提供了自动生成功能完善的Makefile文件的工具autoconf/automake.本文讲述如何使用它们生成Makefile文件.要用到的工具组主要包括autoconf,automake,perl语言环境和m4.   可以使用命令rpm -qa | grep command_name查看…
Makefile文件语法 行解析:命令按行解析 命令行的行首字符为Tab键,其他行的行首字符不得为Tab键,但可以使用多个空格缩进 换行:命令太长时,行尾使用"\"换行 注释:行首字符为"#"的文本行 关闭回显:在行首字符后和命令前添加"@" 未关闭回显时,make会首先回显(打印)命令,然后执行该命令 通常仅在注释和纯显示的echo命令前使用此功能 include filename:包含其他文件 处理模式与c/c++类似 行首加"-&…
在linux下写程序,免不了要写Makefile文件,用automake,总感觉比较麻烦,linux人喜欢做麻烦的事,以显得风格迥异. 其实用qmake生成Makefile文件相当简单. 1 装好qmake工具 2 在源码工程目录下,运行qmake -project 这样会生成一个*.pro文件. 3 运行qmake -makefile *.pro,生成Makefile文件. 此Makefile文件,包含很多的qt的信息,如果工程中没有用到qt相关的库,那么可以删去. 例子: 一个工程目录下:…
makefile make命令:负责c/c++程序编译与链接 make根据指定命令进行建构 建构规则文件:GNUmakefile , makefile,Makefile makefile 文件格式 makefile 语法 --基本语法,变量,条件判断,循环,函数 makefile 文件的基本格式 target...:prerequisites... [tab键]  commands makefile文件的规则 makefile 文件由一系列规则构成 规则目的:建构目标的先决条件是什么以及如何构建…
首先需要知道: obj-m = *.o obj-y = *.o 上面两者的区别在于,前者才会生成ko文件,后者只是代码编译进内核,并不生成ko文件. 生成KO文件,分两种情况:单个.c文件和多个.c文件[以展讯7730 ANDROID4.4为例] 1.单个.c文件 kernel配置文件中定义 CONFIG_RUNYEE_CAMVIB=m 注意上面的m,表示作为一个模块进行编译,最后在MAKEFILE中需要用到的编译开关. 然后再相应的源码目录中的MAKEFILE中添加如下语句: obj-$(CO…
--译自Linux3.9.5 Kernel Makefiles(内核目录documention/kbuild/makefiles.txt) kbuild(kernel build) 内核编译器 This document describes the Linux kernel Makefiles 本文档介绍了Linux内核的Makefile === Table of Contents === 目录 === 1 Overview === 1 概述 === 2 Who does what === 2…
根据老师的要求,写一个超简单的makefile准备:       准备三个文件:file1.c, file2.c, file2.h       file1.c: #include "file2.h" int main() { printf("print file1$$$$$$$$$$$$$$$$$$$$$$$$\n"); File2Print(); return 0; } file2.h: #include <stdio.h> #ifndef FILE2…
.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 声明为伪目标 ----------------------------------…
C语言中代码Makefile文件的写法 单文件,例: #定义变量 CFLAGS=gcc #具体命令都需要一个入口,all: 这个就相当于入口,默认情况,执行第一次入口, #后面执行其他入口进行依赖,如果依赖入口未执行过,那么,先执行依赖入口,否则,不用执行 all: cp run cp: @echo "编译文件开始" $(CFLAGS) -o test test.c @echo "编译文件结束" #在这样的情况下,cp只执行了一次 run: cp @echo &qu…
首先说说本次嵌套执行makefile文件的目的:只需make根目录下的makefile文件,即可编译所有c文件,包括子目录下的. 意义:自动化编译行为,以后编译自己的c文件时可把这些makefile文件直接复制到相应目录即可方便编译出所有文件.这些makefile文件是通用的,只需根据自己的工程情况改动少许内容即可.下面会说. 总体思路是:把目标文件放在debug文件夹下的obj目录下,把最终的二进制文件放在debug文件夹下的bin目录下;如何递归编译所有除了debug目录下的makefile…
[快速的学习笔记] gcc命令:http://www.cnblogs.com/ggjucheng/archive/2011/12/14/2287738.html#_Toc311642845 makefile文件的编写:http://blog.csdn.net/livelylittlefish/article/details/3854220 -----------------------------------------------------[makefile_test] a : main.o…
目录 0. 扫盲 1. 编译,链接 2. Makefile文件执行 3. Makefile书写规则 4. 案例 5. Makefile是如何工作的 6. 拔高,参考 0. 扫盲 Linux 环境下的程序员如果不会使用GNU make来构建和管理自己的工程,应该不能算是一个合格的专业程序员,至少不能称得上是 Unix程序员(是不是夸张了点,别人说的). 什么是makefile文件?它是一个指挥文件,指挥着源文件编译的先后顺序,以及如何链接在一起. 1. 编译,链接 2. Makefile文件执行…
GNU的make工作时的执行步骤入下:(想来其它的make也是类似)      1.读入所有的Makefile.      2.读入被include的其它Makefile.      3.初始化文件中的变量.      4.推导隐晦规则,并分析所有规则.      5.为所有的目标文件创建依赖关系链.      6.根据依赖关系,决定哪些目标要重新生成.      7.执行生成命令. makefile文件伪命令 make一般是使用环境变量SHELL中所定义的系统Shell来执行命令,默认情况下使…
一.首先,看一下最简单的C文件 //hello.c文件 #include <stdio.h> void main() { printf("hello world\n"); } 为hello.c编写makefile文件,这里用gcc编译 $ vi Makefile hello:hello.c gcc -o hello hello.c 从中可以看出,最简单的makefile文件只需要两行,我们分别来看 第1行:hello是要生成的文件,hello.c是编译需要的源文件,中间以:…
(一)makefile里涉及到的gcc命令 gcc -I./inc:指定头文件寻找目录 将按照 ./inc --> /usr/include --> /usr/local/include的顺序寻找头文件 gcc -L./lib:指定库文件的寻找目录 将按照 ./lib --> /usr/lib --> /usr/local/include的顺序寻找库文件 gcc -ltest 将使用libtest.so动态链接库或libtest.a静态链接库,优先使用libtest.so gcc…
main.cpp #include "classes/fun.h" int main() { Test::display("Hello makefile"); return 0; } classes/fun.h #include <iostream> using namespace std; class Test { public: void static display(const char *); }; classes/fun.cpp #includ…
Android.mk脚本结构 下面是main.mk文件包含关系,本文档主要说明的就是这些文件里到底做了什么.(这个文件被根目录下的makefile文件包含) 一.     main.mk 1.检查版本号,设置环境变量(BUILD_SYSTEM)和缺省的目标.$(MAKE_VERSION) >= 3.81,BUILD_SYSTEM= build/core 2.包含文件BUILD_SYSTEM/config.mk.根据配置信息和主机目标机信息,设置一些变量. 3.包含文件BUILD_SYSTEM/c…
目的:       基本掌握了 make 的用法,能在Linux系统上编程.环境:       Linux系统,或者有一台Linux服务器,通过终端连接.一句话:有Linux编译环境.准备:       准备三个文件:file1.c, file2.c, file2.h       file1.c:              #include <stdio.h>              #include "file2.h"              int main()  …
首先说说本次嵌套执行makefile文件的目的:只需make根目录下的makefile文件,即可编译所有c文件,包括子目录下的. 意义:自动化编译行为,以后编译自己的c文件时可把这些makefile文件直接复制到相应目录即可方便编译出所有文件.这些makefile文件是通用的,只需根据自己的工程情况改动少许内容即可.下面会说. 总体思路是:把目标文件放在debug文件夹下的obj目录下,把最终的二进制文件放在debug文件夹下的bin目录下;如何递归编译所有除了debug目录下的makefile…
Linux Makefile文件编写详细步骤与实践 1.makefile概述 Windows环境下IDE会帮你完成makefile文件的编写,但在UNIX环境下你就必须自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力.因为,makefile关系到了整个工程的编译规则.一个工程中的源文件不计数,其按类型.功能.模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进…
转自:http://goodcandle.cnblogs.com/archive/2006/03/30/278702.html 目的:       基本掌握了 make 的用法,能在Linux系统上编程.环境:       Linux系统,或者有一台Linux服务器,通过终端连接.一句话:有Linux编译环境.准备:       准备三个文件:file1.c, file2.c, file2.h       file1.c:              #include <stdio.h>    …