您的位置:首页 > 运维架构 > Linux

Linux下configure&make&make install&make uninstall介绍

2016-08-28 14:05 453 查看
源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)。

1.configure:检查环境,配置编译条件

  它是一个可执行脚本,有很多选项,在待安装的源码路径下使用命令./configure –help输出详细的选项列表。

  一般用来生成 Makefile,为下一步的编译做准备.

  1) ./configure --prefix 

   它的作用是配置安装路径,如:./configure --prefix=/usr

   意思是将该软件安装在/usr下面,执行文件就会安装在/usr/bin,资源文件就会安装在/usr/share

   --prefix选项还有一个好处:卸载的时候,直接删除一个文件夹(安装目录)即可。

   移植软件也只需拷贝整个目录到另外一个机器即可(相同的操作系统)。

   

  2) ./configure 

   不配置--prefix选项,安装后可执行文件默认放在/usr/local/bin,库文件默认放在/usr/local/lib,

   配置文件默认放在/usr/local/etc,其它的资源文件放在/usr/local/share

  

2.make:它从Makefile中读取指令,然后编译

  大多数的源代码包都经过这一步进行编译(当然有些perl或python编写的软件需要调用perl或python来进行编译).

  如果在make过程中出现error,你就要记下错误代码(注意不仅仅是最后一行),然后你可以向开发者提交,bugreport(一般install里有提交地址)

  或者你的系统少了一些依赖库等,这些需要自己仔细研究错误代码。

3.make install:用来安装,从Makefile中读取指令,安装到指定的位置

  安装的时候需要root权限,当然有些软件需要先运行 make check或make test来进行一些测试.

4.make uninstall: 卸载程序

  在原来的make目录下用一次make uninstall,但前提是makefile文件指定过uninstall,如果makefile没有uninstall,则需要手动删除.

补充:

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

最常见的几个目标:

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

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

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

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

make distclean:同时删除./configure和make产生的临时文件

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

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

make dist:重新打包成packname-version.tar.gz
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Linux Unix