源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)。
Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令./configure –help输出详细的选项列表。
其中--prefix选项是配置安装的路径,如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share,比较凌乱。
如果配置--prefix,如:
./configure --prefix=/usr/local/test
可以把所有资源文件放在/usr/local/test的路径中,不会杂乱。
用了—prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统)。
当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是make文件指定过uninstall。
————————————————
./configure常用参数解释:
–help:显示帮助信息并退出
–prefix=/home/carl:指定安装位置,如果安装位置不指定,默认路径为/usr/local下的bin、lib等文件夹
–build:就是你正在使用的机器,查看本机使用的可以在configure目录下执行./config.guess
–host:就是你编译好的程序可以运行的机器
–target:就是你编译好的程序可以处理的其他平台
比如你build的机器是x86,想运行的host机器是arm,程序可以处理的程序target是mips
CC:指定编译工具链的名字
CFLAGS:指定头文件(.h文件)的路径,如:CFLAGS=-I/usr/include -I/path/include
LDFLAGS:gcc 等编译器会用到的一些优化参数,也可以在里面指定库文件的位置。用法:LDFLAGS=-L/usr/lib -L/path/to/your/lib
LIBS:告诉链接器要链接哪些库文件,如LIBS = -lpthread -liconv
————————————————