关闭

makefile 的过程

标签: makefile
114人阅读 评论(0) 收藏 举报
分类:

makefile关系到整个工程的编译规则。一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令

关于程序编译的一些规范和方法,一般来说,无论是CC++、还是pas,首先要把源文件编译成中间代码文件,在Windows下也就是.obj文件,UNIX下是.o文件,即 Object File,这个动作叫做编译compile)。然后再把大量的ObjectFile合成执行文件,这个动作叫作链接link

 

步骤:给一个程序源文件,首先进行编译,即检测程序的语法,函数、变量是否被声明,如果未声明,则会给出警告,但是还是会生成中间目标文件,即Object File.接下来链接程序,链接器根据Object File找寻函数的实现,如果找不到就会报错链接错误码(Linker Error)。


Makefile 通常与make  ,make clean 一起用

当makefile文件写好之后,直接make,就会执行程序,使用makeclean 删除掉所有由make创建的文件。

make install  安装已编译好的程序,其实就是把目标可执行文件拷贝到指定的目录中去

check 或 test 用来测试makefile的流程。


0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

makefile定义作用及其执行过程

1、定义: makefile是一个脚本文件,解决了批处理(自动编译)的问题,即用一条指令替代多条指令执行的效果,帮助make来编译工程代码。 在 Linux(unix )环境下使用GNU ...
  • An1540879349
  • An1540879349
  • 2016-04-22 17:21
  • 2087

make,makefile和程序的编译链接过程

一,Linux下程序运行过程 1,在一个目录下新建三个文件:main.c hello.c hello.h分别编写他们如下图: 2,想要让这个程序执行起来,就必须对上面的三个文件分别进行编译...
  • Stand__out
  • Stand__out
  • 2016-06-02 12:00
  • 4177

Makefile 中命令的@,-@,+@符号 作用, 案例分析

make/makefile中的加号+,减号-和at号@的含义 shell 命令 每个目标都可以具有与其关联的一系列 shell 命令,这些命令通常用来创建目标。此脚本中的每一条命令都必须以...
  • elfprincexu
  • elfprincexu
  • 2016-07-12 10:33
  • 1223

自动生成_Makefile_的全过程详解

  • 2013-03-29 10:57
  • 100KB
  • 下载

Ubuntu下程序的编译和链接过程和openCV的makefile文件

简述在windows下编程,可能一个F5就能让代码跑起来,那是因为IDE(比如VS2103等)已经帮你做好了后台的编译和链接过程。当在Ubuntu下让代码跑起来,就要自己去理解代码的编译和链接过程。 ...
  • CV_YOU
  • CV_YOU
  • 2017-04-20 16:31
  • 1490

makefile定义作用及其执行过程

1、定义: makefile是一个脚本文件,解决了批处理(自动编译)的问题,即用一条指令替代多条指令执行的效果,帮助make来编译工程代码。 在 Linux(unix )环境下使用GNU ...
  • An1540879349
  • An1540879349
  • 2016-04-22 17:21
  • 2087

Automake生成Makefile过程简介

Automake支持三种目录层次:flat,shadow,deep 1.flat 所有的源文件及相关文件都放在顶层目录中。 2.shadow 主要的源文件存放在顶层目录中,其它的存放在各个子目录中。 ...
  • yuan1164345228
  • yuan1164345228
  • 2016-04-12 16:11
  • 252

Linux内核Makefile编译生成内核目标文件的过程

#based on v2.6.26 kernel Linux内核Makefile编译生成内核目标文件的过程 直接执行make的编译过程 1.先找到入口点(入口点问题) #编译内...
  • sfrysh
  • sfrysh
  • 2011-11-06 13:43
  • 824

自动生成Makefile的全过程详解!automake/autoconf入门

automake/autoconf 入门 作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefi...
  • u012478275
  • u012478275
  • 2014-12-10 11:25
  • 317

自动生成Makefile的全过程详解!automake/autoconf入门

文章出处:http://hi.baidu.com/%C7%B6%C8%EB%CA%BD%C7%FD%B6%AF/blog/item/16fb0b1eae1e3e8687d6b63b.html  ...
  • sidely
  • sidely
  • 2015-11-13 14:32
  • 351
    个人资料
    • 访问:9868次
    • 积分:412
    • 等级:
    • 排名:千里之外
    • 原创:32篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章分类