文档章节

make clean与make distclean的区别

ustbgaofan
 ustbgaofan
发布于 2014/07/30 16:22
字数 525
阅读 85
收藏 8
点赞 0
评论 0

make clean仅仅是清除之前编译的可执行文件及配置文件。 
而make distclean要清除所有生成的文件。

Makefile

在符合GNU Makefiel惯例的Makefile中,包含了一些基本的预先定义的操作:

make

根据Makefile编译源代码,连接,生成目标文件,可执行文件。

make clean

清除上次的make命令所产生的object文件(后缀为“.o”的文件)及可执行文件。

make install

将编译成功的可执行文件安装到系统目录中,一般为/usr/local/bin目录。

make dist

产生发布软件包文件(即distribution package)。这个命令将会将可执行文件及相关文件打包成一个tar.gz压缩的文件用来作为发布软件的软件包。

它会在当前目录下生成一个名字类似“PACKAGE-VERSION.tar.gz”的文件。PACKAGE和VERSION,是我们在configure.in中定义的AM_INIT_AUTOMAKE(PACKAGE, VERSION)。

make distcheck

生成发布软件包并对其进行测试检查,以确定发布包的正确性。这个操作将自动把压缩包文件解开,然后执行configure命令,并且执行make,来确认编译不出现错误,最后提示你软件包已经准备好,可以发布了。

make distclean类似make clean,但同时也将configure生成的文件全部删除掉,包括Makefile。


--------------------------------------------------------------------------------------------------

当我们在使用make命令时,常常会在make后面加上其他单词,比如check,install,installcheck…这些单词都是make的参数,我们称之为“目标(targets)”。

最常见的几个目标:

make all:编译程序、库、文档等(等同于make)

make install:安装已经编译好的程序。复制文件树中到文件到指定的位置

make unistall:卸载已经安装的程序。

make clean:删除由make命令产生的文件

make distclean:删除由./configure产生的文件

make check:测试刚刚编译的软件(某些程序可能不支持)

make installcheck:检查安装的库和程序(某些程序可能不支持)

make dist:重新打包成packname-version.tar.gz


本文转载自:http://www.cnblogs.com/hnrainll/archive/2011/06/08/2075052.html

共有 人打赏支持
ustbgaofan
粉丝 12
博文 140
码字总数 33388
作品 0
海淀
程序员
make clean、make mrproer 以及make distclean的区别

make clean、make mrproer 以及make distclean的区别 解压内核源码包后, 到内核源代码目录树的顶层目录, 执行 #make help Cleaning targets: clean - Remove most generated files but kee...

长平狐
2013/06/03
79
0
移植命令和库到海思相关芯片

编译fw_printenv工具: make ARCH=arm CROSSCOMPILE=arm-hisiv300-linux- hi3521aconfig make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- make ARCH=arm CROSS_COMPILE=arm-hisiv300-linu......

baiweibi
2017/12/24
0
0
给centos6.4的python升级

由于下载了一个apache-cassandra-2.2.4,运行cqlsh的时候提示只支持2.7的,而默认是2.66的,于是准备升级: wget --no-check-certificate https://www.python.org/ftp/python/2.7.8/Python-2....

xiaohan815
2016/01/04
33
0
新手看招:Linux系统下Tar基本安装方法

cp xxx.tar.gz /root 2、解压缩。 tar xvzf xxx.tar.gz 或直接双击解压缩. 3、检查编译。 ./configure 4、检查通过后,将生成用于编译的MakeFile文件。此时,可以开始进行编译。 make。 5、成...

范堡
2009/05/24
43
0
redis3.2安装过程分享

转载自我要求索网 redis3.2安装过程分享 去 redis官网 下载对应的版本。下载地址:https://redis.io/download centos安装redis 下载redis-3.2.5.tar.gz 解压文件并进入解压后的目录 [root@lo...

求索路
2016/12/27
55
0
Linux系统下Tar文件安装方法

1、将安装文件拷贝至你的目录中,如果是以root身份登录上的,就将软件拷贝至/root中。 #cp xxx.tar.gz /root 2、解压缩。 #tar xvzf xxx.tar.gz 或直接双击解压缩. 3、检查编译。 #./configu...

Bony
2016/06/13
7
0
新手看招:Linux系统下Tar基本安装方法

cp xxx.tar.gz /root 2、解压缩。 tar xvzf xxx.tar.gz 或直接双击解压缩. 3、检查编译。 ./configure 4、检查通过后,将生成用于编译的MakeFile文件。此时,可以开始进行编译。 make。 5、成...

JavaGG
2009/05/08
96
0
编译Linux内核

在源代码的目录下,有一个配置文件,.config文件,可以使用默认的,也可以使用 命令清除,然后重新配置内文配置文件,把/boot/下的配置文件拿来修改使用,或者在源代码下/arch/平台下 选择相...

晨曦之光
2012/04/13
67
0
Linux基础之软件管理 编译安装

源码安装(编译安装) 前提:系统内需要存在编译器gcc yum install gcc -y 三部曲: ./configure --prefix=安装路径 make make install 卸载:两种方法 make uninstall make clean make distcle...

胤999
2017/12/27
0
0
redis 3.0源码安装详细步骤说明

到官网下载,然后在服务器上执行 tar zxvf redis-3.0.4.tar.gz cd redis-3.0.4 make cd src ./redis-server启动redis make一下即可完成安装。通过redis-cli 进入执行ping显示pong就说明安装成...

落叶刀
2015/10/15
98
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

SpringBoot | 第十章:Swagger2的集成和使用

前言 前一章节介绍了mybatisPlus的集成和简单使用,本章节开始接着上一章节的用户表,进行Swagger2的集成。现在都奉行前后端分离开发和微服务大行其道,分微服务及前后端分离后,前后端开发的...

oKong
今天
5
0
Python 最小二乘法 拟合 二次曲线

Python 二次拟合 随机生成数据,并且加上噪声干扰 构造需要拟合的函数形式,使用最小二乘法进行拟合 输出拟合后的参数 将拟合后的函数与原始数据绘图后进行对比 import numpy as npimport...

阿豪boy
今天
1
0
云拿 无人便利店

附近(上海市-航南路)开了家无人便利店.特意进去体验了一下.下面把自己看到的跟大家分享下. 经得现场工作人员同意后拍了几张照片.从外面看是这样.店门口的指导里强调:不要一次扫码多个人进入....

周翔
昨天
1
0
Java设计模式学习之工厂模式

在Java(或者叫做面向对象语言)的世界中,工厂模式被广泛应用于项目中,也许你并没有听说过,不过也许你已经在使用了。 简单来说,工厂模式的出现源于增加程序序的可扩展性,降低耦合度。之...

路小磊
昨天
165
1
npm profile 新功能介绍

转载地址 npm profile 新功能介绍 npm新版本新推来一个功能,npm profile,这个可以更改自己简介信息的命令,以后可以不用去登录网站来修改自己的简介了 具体的这个功能的支持大概是在6这个版...

durban
昨天
1
0
Serial2Ethernet Bi-redirection

Serial Tool Serial Tool is a utility for developing serial communications, custom protocols or device testing. You can set up bytes to send accordingly to your protocol and save......

zungyiu
昨天
1
0
python里求解物理学上的双弹簧质能系统

物理的模型如下: 在这个系统里有两个物体,它们的质量分别是m1和m2,被两个弹簧连接在一起,伸缩系统为k1和k2,左端固定。假定没有外力时,两个弹簧的长度为L1和L2。 由于两物体有重力,那么...

wangxuwei
昨天
0
0
apolloxlua 介绍

##项目介绍 apolloxlua 目前支持javascript到lua的翻译。可以在openresty和luajit里使用。这个工具分为两种模式, 一种是web模式,可以通过网页使用。另外一种是tool模式, 通常作为大规模翻...

钟元OSS
昨天
2
0
Mybatis入门

简介: 定义:Mybatis是一个支持普通SQL查询、存储过程和高级映射的持久层框架。 途径:MyBatis通过XML文件或者注解的形式配置映射,实现数据库查询。 特性:动态SQL语句。 文件结构:Mybat...

霍淇滨
昨天
2
0
开发技术瓶颈期,如何突破

前言 读书、学习的那些事情,以前我也陆续叨叨了不少,但总觉得 “学习方法” 就是一个永远在路上的话题。个人的能力、经验积累与习惯方法不尽相同,而且一篇文章甚至一本书都很难将学习方法...

_小迷糊
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部