千家信息网

Linux系统make、make install、./confiigure怎么使用

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇"Linux系统make、make install、./confiigure怎么使用"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家
千家信息网最后更新 2026年11月01日Linux系统make、make install、./confiigure怎么使用

这篇"Linux系统make、make install、./confiigure怎么使用"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"Linux系统make、make install、./confiigure怎么使用"文章吧。

简单点说:./configure主要用于检测安装平台目标特征。make是用来编译的,make install**是用来安装的。

一、configure

这一步一般用来生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,比如代码:

 ./configure --prefix=/usr

上面的意思是将该软件安装在 /usr 下面,执行文件就会安装在 /usr/bin (而不是默认的 /usr/local/bin),资源文件就会安装在 /usr/share(而不是默认的/usr/local/share)。

当然在执行这个脚本的时候有非常多的可选岸数可以指定,我们可以通过允许 ./configure –help 察看详细的说明帮助。常见的一些参数如下,并不是每一个程序都相同哦,有的会有一些不一样的:

 (1)--prefix = PREFIX   把所有文件装在目录PREFIX下面.      (2)--exec-prefix = EXEC-PREFIX   你可以把体系相关的文件安装到一个不同的位置,   EXEC-PREFIX,而不是   PREFIX   设置的地方.这样做可以比较方便地在不同主机之间共享体系相关的文件.   如果你省略这些,那么   EXEC-PREFIX   就会被设置为等于   PREFIX   并且体系相关和体系无关的文件都会安装到同一棵目录树下,   这也可能是你想要的.          (3)--bindir=DIRECTORY   为可执行程序声明目录,缺省是 EXEC-PREFIX/bin,通常也就是 /usr/local/pgsql/bin.          (4)--datadir=DIRECTORY   设置所安装的程序需要的只读文件的目录.缺省是   PREFIX/share.   请注意这个目录和你放数据库文件的地方没有任何关系.          (5)--sysconfdir=DIRECTORY   用于各种各样配置文件的目录,缺省为   PREFIX/etc.          (6)--libdir=DIRECTORY   库文件和动态装载模块  的目录.缺省是   EXEC-PREFIX/lib.          (7)--includedir=DIRECTORY     C和C++   头文件的目录.缺省是   PREFIX/include.          (8)--docdir=DIRECTORY   文档文件,(除   "man(手册页)"以外,   将被安装到这个目录.缺省是   PREFIX/doc.          (9)--mandir=DIRECTORY   随着   PostgreSQL   一起带的手册页   将安装到这个目录.在它们相应的   manx子目录里.   缺省是   PREFIX/man.

二、make

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

make 是 Linux 开发套件里面自动化编译的一个控制程序,他通过借助 Makefile 里面编写的编译规范进行自动化的调用 gcc 、ld 以及运行某些需要的程序进行编译的程序。一般情况下,他所使用的 Makefile 控制代码,由 configure 这个设置脚本根据给定的参数和系统环境生成。

如果 在 make 过程中出现 error ,你就要记下错误代码(注意不仅仅是最后一行),然后你可以向开发者提交 bugreport(一般在 INSTALL 里有提交地址),或者你的系统少了一些依赖库等,这些需要自己仔细研究错误代码。

make 的作用是开始进行源代码编译,以及一些功能的提供,这些功能由他的 Makefile 设置文件提供相关的功能,比如 make install 一般表示进行安装,make uninstall 是卸载,不加参数就是默认的进行源代码编译。

三、make install

这条命令来进行安装(当然有些软件需要先运行 make check 或 make test来进行一些测试),这一步一般需要你有 root 权限(因为要向系统写入文件)


一些常见的问题:

(1)Linux CC与Linux GCC的区别概括介绍:

从名字上看,老的unix系统的CC程序叫做C Compiler,它是一个古老的Unix上专门用于编译C语言的编译器。但GCC这个名字按GNU的说法叫做Gnu Compiler Collection。因为gcc包含很多编译器(C, C++, Objective-C, Ada, Fortran,and   Java)。所以它们是不一样的,一个是一个古老的C编译器,一个是编译器的GNU的编译器的集合(Gcc里的C编译器比CC强大太多了,所以你没必要用CC)。当你调用gcc时不一定是调用的C/C++编译器,是gcc根据文件扩展名自动识别并调用对应的编译器,具体可查阅$man gcc。

你是下载不到CC的,原因是:CC来自于昂贵的Unix系统,CC是商业软件,要想用你需要打电话,写订单,而不是打开你的Browser去download。

linux下的cc是gcc的符号链接,可以通过$ls –l /usr/bin/cc来简单察看。而编译时看到的控制台输出CC则是一个指向gcc的变量,该变量是make程序的内建变量,就算你在Makefile中没有CC= ,该变量也会存在,并默认指向gcc。cc的符号链接和变量存在的意义在于源码的移植性,可以方便的用GCC来编译老的用cc编译的unix软件,甚至连Makefile都不要改。而且也便于linux程序在unix下编译。

近几年的一个新情况是越来越多的unix用户,据我所知像solaris,bsd用户也不太使用CC了,人们都一定要装一个gcc,用它来编译C/C++程序。原因显而易见,gcc足够强大,健壮。支持估计目前为止只有它支持的ISO c/c++ 新特性。当然你最好不要使用night版本的gcc。

(2)关于make install的解释

make 和 make install 中的mark是系统自带的命令还是可执行程序文件?make install中,是不是可以认为 install是mark的参数???

注意:install 不是make的参数,而是在makefile(Makefile)中有如:install:的语句。如果用make install,那么就执行install:后面的语句。

以上就是关于"Linux系统make、make install、./confiigure怎么使用"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。

编译 文件 程序 目录 系统 编译器 参数 内容 变量 软件 代码 体系 控制 功能 可以通过 就是 源代码 不同 古老 强大 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 江苏根荣互联网科技 科技平台互联网 奇酷互联网络科技公司 居家互联网科技有限公司 联恩商钥互联网科技有限公司 中正互联网科技招聘 湖南洣水互联网科技有限公司扣款 恒银科技与互联网金融 互联网科技创新服务 宁夏科技产业互联网案例 厦门比较好的科技互联网公司 呼和浩特新华互联网科技学院 用友工业互联网科技发展 小米互联网科技园入驻 黑云互联网科技有限公司 风投北京互联网科技 数字互联网科技有限公司 第三届互联网大会安防黑科技 现代互联网科技公司 每日互联网科技新闻 广州淘业互联网络科技 云电互联网科技 上海万想互联网科技 多迪互联网科技有限公司 济南华为互联网科技产业总部基地 语蝶互联网科技有限公司 广西互联网科技孵化中心 用友工业互联网科技发展 米泉互联网科技专业怎么样 现代科技的标志之一的互联网
0