目录
注意:若源码安装执行./configure报:No such file or directory
目录
注意:若源码安装执行./configure报:No such file or directory
原理介绍
在Linux平台下,软件包的类型可以划分为两类:源码包、二进制包;
一个软件要在Linux上执行,必须是二进制文件;
源码包:即程序软件的源代码(一般也叫Tarball,即将软件的源码以tar打包后再压缩的资源包);源码包是作者直接将源程序发布在网上,我们直接下载源文件,自己编译成二进制程序使用;
二进制包:如 Red Hat发行版的.rpm包,Debian发行版的.deb包;
源码安装
源码安装优点:
1、文档齐全;
2、开源,可修改源代码;因为可以定位到代码,所以debug方便;
3、本机兼容性最好(由于是本机编译的,只要编译通过,就没有各种库的依赖的问题)
4、编译安装,更加适合自己的系统,更加稳定效率更高;
5、可自由选择所需要的功能;
6、 卸载方便也更加干净;源码包是没有卸载命令,直接执行rm命令卸载即可,没有垃圾残留;
源码安装缺点:
1、安装步骤过多,容易出现错误;
2、 编译过程较长,安装比二进制包安装时间长;
3、缺乏自动依赖管理,软件升级麻烦;
源码安装一般步骤:
1、下载源码包并解压到指定目录; //一般将源码包解压至目录/user/local/src下
2、预编译(配置)./configure; //设置安装目录,安装模块等选项
3、编译 make; //生成可执行二进制文件
4、安装make install; //复制二进制文件到系统,配置应用环境
//Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令./configure–help输出详细的选项列表; 配置这一步骤:把系统环境的检测结果和定义好的功能选项写入Makefile文件中,为了后续的编译和安装做铺垫
//其中./configure --prefix==安装路径,来指定安装路径,一般情况下默认的安装路径为/usr/local--prefix选项是配置安装的路径,如果不配置该选项,安装后可执行文件默认放在/usr/local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr/local/share,比较凌乱;
//如果配置--prefix,如:./configure --prefix=/usr/local/test
可以把所有资源文件放在/usr/local/test的路径中,不会杂乱;
//用了—prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统);
//make会调用gcc编译器,读取makefile文件中的信息进行系统软件编译。将源码程序转化为可以被linux系统所识别的可执行文件
//如果在./configure或者make编译中报错,那么我们在重新执行前一定要执行make clean命令,系统清空Makefile文件或编译产生的.o开头的文件;
//make install是用来安装的,它从Makefile中读取指令,安装到指定的位置。只有在执行install的时候才会向指定的安装目录写入文件。
//当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是make文件指定过uninstall;
minisat源码安装流程:
1、解压下载好的安装包:
2、解压至自定义的指定目录Sminisat ;
3、cd进入解压之后的软件包,预编译;
由于Makefile已经写好,则无需执行步骤:./ configure
4、编译及安装;
5、查看安装目录,多出一个可执行程序minisat ;
6、软件安装完毕,./运行minisat测试功能;
注意:若源码安装执行./configure报:No such file or directory
说明当前安装目录下没有这个configure文件;
有的软件包并不是用makefile的,或者makefile已经写好,不用config了,因此不提供configure;
可看文件夹里是否有makefile文件,若有,可以直接使用make编译,make install安装;
如果没有,看是否有setup、install等sh文件或其它可执行文件;
还有一种情况,这个软件解压即可运行;
二进制安装
二进制包分类
DPKG包:由 Debian Linux开发出的包管理机制,主要应用于Debian和Ubuntu中;
RPM包:由Ret Hat开发的包管理系统,安装,升级,卸载非常方便。主要应用于Centos, Fedora等等;
二进制包安装优点
包管理系统简单,只需要几个命令即可实现安装,卸载等等;
安装速度比源码包安装快很多;
二进制包安装缺点
1、不是开源的,看不到源代码;
2、功能选择不如源代码灵活;
3、安装软件包需要依赖于其他的软件包;
minisat二进制包安装:
安装方式一:
输入命令:suod apt install minisat 进行安装
输入:minisat
显示结果如下则安装成功;
安装方式二:
直接进入minisat官网,下载二进制包,并将下载好二进制包放到linux环境中;
下列即是minisat的可执行二进制包文件,可直接运行;