编译安装相关命令和工具
编译安装的优点:
- 可以获得更新的软件(软件更新时,可能还没来得及制作rpm软件包)。
- 编译安装的软件可以按需定制。编译安装时可以通过开启、禁用某些功能获得更好的性能。
- 编译安装软件会按系统硬件的实际情况编译某些模块,因此拥有更好的适用性。
- 高级用户可以按需要修改源代码,为自己量身定制软件。
一、安装编译环境
在编译安装应用之前,首先需要安装编译环境。Linux系统中的大多数软件使用的编译环境都是gcc,因此应该先安装gcc编译环境。如果软件需要使用图形界面,可能还需要安装gtk+编译环境(gtk+是Linux系统中的图形编译环境,与gcc一样,是一个开源软件)。
(1)可以使用rpm命令检查系统是否已经安装了gcc编译环境:
[root@localhost ~]# rpm -qa | grep gcc gcc -c++- 4.1 . 2 - 14 .el5 libgcc - 4.1 . 2 - 14 .el5 gcc - 4.1 . 2 - 14 .el5 gcc -gfortran- 4.1 . 2 - 14 .el5
如果系统中没有安装编译环境,可以挂载光驱,然后在光驱的安装包目录中使用rpm -ivh进行安装。
(2)按照同样的方法安装gtk+编译环境。
二、获取软件工具wget、links
互联网上有许多开放源码软件,这些软件可以为用户完成各个方面的应用需要。下面是国内比较有影响力的一些Linux软件下载站点:
China UNIX软件下载中心: http://download.chinaunix.net/disc/linux/
中国IT实验室下载中心: http://download.chinaitlab.com/
红联Linux门户: http://www.linuxdiyf.com
华军软件园Linux下载频道: http://linux.newhua.com/
如果要下载软件的最新版本,通常可以在谷歌( http://www.google.com/ )搜索其官方网站下载。
1、使用wget工具下载软件
如果在远程终端中操作,可以使用wget工具下载已知网址的软件(在本地操作系统中复制软件的网址,然后在Putty等终端中单击鼠标右键粘贴网址)。
wget是Linux系统中常用的下载工具,它可以使用HTTP、FTP等多种协议。在使用wget下载之前,需先设置系统网络。
【命令格式】
wget [ option] <URL>
【常用选项】
c:该选项的功能是续传上次没有下载完成的任务。使用选项c的前提是当前目录中保存有上次没有下载完成的文件。
【用法示例】
[root@localhost ~]# wget http: // www.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc4.tar.bz2 -- 10 : 47 : 06 -- http: // www.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc4.tar.bz2 Resolving www.mplayerhq.hu... 192.190 . 173.45 , 193.225 . 187.202 , 143.248 . 234.110 , ... Connecting to www.mplayerhq.hu | 192.190 . 173.45 |: 80 ... connected. HTTP request sent, awaiting response... 200 OK Length: 10351350 ( 9.9M ) [application/x- bzip2] Saving to: `MPlayer - 1 .0rc4.tar.bz2 ' 29 % [==========> ] 3 , 072 , 562 3 .32K/s eta 18m 22s
下载过程被中断后,使用选项c进行续传:
[root@localhost ~]# wget -c http: // www.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc4.tar.bz2 -- 10 : 55 : 04 -- http: // www.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc4.tar.bz2 Resolving www.mplayerhq.hu... 192.190 . 173.45 , 193.225 . 187.202 , 131.246 . 123.5 , ... Connecting to www.mplayerhq.hu | 192.190 . 173.45 |: 80 ... connected. HTTP request sent, awaiting response... 200 OK Length: 10351350 ( 9.9M ) [application/x- bzip2] -- 10 : 55 : 07 -- ( try : 2 ) http: // www.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc4.tar.bz2 Reusing existing connection to www.mplayerhq.hu: 80 . HTTP request sent, awaiting response... 206 Partial Content Length: 10351350 ( 9.9M ), 7278788 ( 6.9M ) remaining [application/x- bzip2] Saving to: `MPlayer - 1 .0rc4.tar.bz2 ' 34 % [+++++++++++=> ] 3 , 528 , 585 6 .80K/s eta 17m 22s
2、字符界面中的浏览器links
如果要在字符界面中下载软件,可以使用字符界面中最简单的浏览器links。直接使用命令links和网站的网址即可启动links浏览器:
# links http: // www.mplayerhq.hu
此时系统会立即启动links浏览器并打开网站。
在links浏览器中,可以使用上、下方向键切换选择要操作的超链接,跳转到超链接可以按下Enter键。如果要查看其菜单,可以按F9键,退出links浏览器,可以按q键。
三、编译前的配置
在编译安装之前,应该先执行配置工作。配置工作需要使用软件源码目录中自带的可执行文件configure。
注意:开始安装软件前,应该先查看软件源码中的说明文件(通常其名为README)。说明文件中可能会列出需要安装的前提软件、编译时需要注意的事项(例如有些软件不允许并行编译)等。
(1)下载的源码包通常都会使用tar工具归档,首先需要从下载的归档文件中恢复源码目录:
# tar -xvjf MPlayer-
1
.0rc4.tar.bz2
tar命令将恢复的文件放到当前目录中的MPlayer-1.0rc4子目录中。
(2)恢复归档文件后,就可以进入源代码目录,查看配置的帮助信息:
# cd MPlayer- 1 .0rc4 #不同的软件配置命令的选项和功能都不同,因此编译安装前都应该使用以下命令查看帮助 # . /configure --help
使用可执行文件configure配置软件时,常用的选项为prefix,该选项用于指定程序的安装目录。
(3)如果不使用prefix指定程序的安装目录,程序会使用/usr/local作为其安装目录。用户可以指定选项prefix的值自定义应用程序的安装目录。
本例将程序安装到目录/usr/local/MPlayer中:
#由于配置文件不会自动生成目录,因此需要手动生成安装目录 # mkdir -p /usr/local/ MPlayer # . /configure --prefix=/usr/local/MPlayer
在配置过程中,configure会检查系统是否符合软件的运行环境,例如内核支持、硬件支持、相关库文件支持、编译环境等。用户应该特别注意被标记为错误的检查结果(错误往往是由于软件需要某种支持或前提软件缺失等,这些都会导致软件安装失败),对标记为no的检查结果通常可以忽略。
(4)当然可能许多人会认为终端模式使用起来十分不便,需要使用MPlayer的图形界面。可以在配置时加上选项enable-gui:
# ./configure --enable-gui --prefix=/usr/local/MPlayer
如果配置过程没有出现任何错误,接下来就可以编译源代码了。
四、编译软件命令make
使用可执行文件configure完成配置工作后,就需要使用命令make对软件进行编译了。在编译软件过程中,gcc编译器会利用软件的源码,为软件生成应用程序运行时必需的可执行文件、共享库文件。
在软件的源码目录中对应用程序执行编译:
# make
提示:如果软件需要进行二次编译,建议在二次编译前,先使用make clean清除上次编译生成的文件。
五、安装命令make install
编译成功后,就可以使用命令make install安装应用程序了。在安装过程中,make install会使用prefix指定的目录,将应用程序的库文件、可执行文件、帮助文件等安装到指定的目录中。
(1)在本例中可以直接使用make install安装软件:
# make install
(2)为了运行图形化的MPlayer,还需要为其安装默认的皮肤。如果在安装时选择了MPlayer使用的语言,还需要为其安装相关的字体文件。
下载皮肤文件:
下载完成之后,将其解压缩:
tar -xvjf Blue-
1.7
.tar.bz2
将皮肤文件复制到软件包中的皮肤目录并重命名:
# cp -r Blue /usr/local/MPlayer/share/mplayer/skins/
default
六、运行及环境配置
1、运行软件
软件被安装在了目录/usr/local/MPlayer中。通常程序文件会放在bin目录中,可以查看该目录中的文件并运行。
(1)由于软件的相关设置没有写入环境变量,因此需要使用绝对路径的方式运行软件:
# /usr/local/MPlayer/bin/mplayer test.mp3
如果要退出正在字符界面运行的MPlayer,可以按q键。
(2)如果安装了图形化的MPlayer,可以在图形界面中运行以下命令启动MPlayer:
# /usr/local/MPlayer/bin/gmplayer
2、环境配置
上面安装的软件不能像运行其他模式软件和命令那样,直接输入命令运行。在上面的例子中,均使用了绝对路径的方式运行软件。这是因为新安装的软件使用了自定义路径(如果没有自定义软件的安装目录,可跳过环境配置步骤),这个路径并不在系统环境变量PATH中,为了可以更快捷地运行软件,还需要配置环境变量。
(1)在命令行中配置环境变量,可以使用如下命令:
#将MPlayer的程序目录保存到环境变量PATH # PATH =$PATH:/usr/local/MPlayer/ bin #使用export将PATH变量定义为全局变量 # export PATH
上面命令的作用是将软件的程序目录加到变量PATH结尾,此时就可以像使用命令那样直接运行maplayer和gmplayer了。
(2)但使用上面的方法将会在系统重新启动后失效。如果需要使其在重启后仍然有效,可以使用修改系统配置文件的方法。
将环境变量保存到配置文件时,如果仅需要为当前用户添加环境支持,可以将相关配置语句写入文件~/.bash_profile中:
# echo " #add MPlayer directory " >>~/ .bash_profile # echo " PATH=\$PATH:/usr/local/MPlayer/bin " >>~/ .bash_profile # echo " export PATH " >>~/.bash_profile
如果需要为所有用户添加环境支持,可以使用以下命令:
# echo " #add MPlayer directory " >>/etc/ profile # echo " PATH=\$PATH:/usr/local/MPlayer/bin " >>/etc/ profile # echo " export PATH " >>/etc/profile
上述命令均是将相关命令写入到相关的配置文件中,重新启动或重新登录系统后即可生效。如果不想重启系统可以使用命令source /etc/profile达到重启的作用。
七、卸载软件命令make uninstall
使用编译安装的软件通常可以使用make install命令卸载,此命令只能在软件源码目录中使用:
# make uninstall
以上命令需要源码目录中的相关文件的支持(主要是源码目录中的Makefile等文件),如果文件不支持,就无法使用以上命令卸载软件。
对于不能使用make uninstall命令卸载的软件,如果使用了自定义软件安装路径的方式安装软件,只需要将环境变量、安装目录及其中的所有文件删除即可。如果使用默认路径,则不能删除(可能会删除其他软件或相关帮助信息等)。