能否在LINUX下顺利安装软件,很大程度上影响你对LINUX的坚持时间,刚接触LINUX的时候,安装软件不顺利简直是件让人抓狂的事情,反正就是怎么装都装不上。玩LINUX有一段时间的朋友都知道,随着软件安装的增多,后面装软件会越来越顺利,原因是安装软件的基础慢慢巩固起来了。
一个新系统安装完的时候,问题最多。因为安装软件的基础不好。
“安装软件的基础”说白了就是一些库文件,一些编译、依赖环境等等,因为会随着软件安装的增多,后面安装软件时候的依赖文件、依赖环境在前面都搭建好了,所所以会觉得装软件很顺利…表达能力不行,这一段不知道怎么形容才好,我言传不了,那就请看帖的朋友意会了。
以下是我目前所掌握的一些方式,希望对一些朋友有所帮助…
1、安装系统不能忘记的项目!我100个建议在安装系统的时候将”development tools”和“development libraries” 这两个项目里的东东安装上,这两个项目不安装的话,基本上可以宣告你没法安装软件了,尤其是”development tools”里面的东东,你点开看看里面是哪些东西你就知道为什么如此重要了。
2、安装rpm还是source code?对于刚接触LINUX的朋友,我个人建议先用source code安装试试,如果source code安装不了就安装rpm包,不要因为一时间安装不了一个软件影响士气,玩LINUX是要长期坚持的…
3、安装source code。最常用(常用不表示一定哦)且简单的模式是
./configure && make && make install && make clean
一个常规,在source code中,一般都有”README”和”INSTALL”字样的文件,建议在安装之前先看这些文件,里面一般会告诉你需要的环境和文件、安装方法、默认参数之类的信息。千万记得在”./configure”之前看这些文件,因为有些软件帮你些了一个*.sh文件(脚本文件),你得先运行这个脚本后才能”./configure”,还有一些比如是perl环境的软件的安装方式可能是”perl xx.xxx.xxxx”,另外比如”Python xx.xxx.xxxx”之类的等等。
看完说明文件确定第一个命令是”./configure”,也不要着急下这个指令,建议用”./configure –help”看看安装参数先,不然稀里糊涂的”make install”完以后,软件跑哪里了都不知道,有些软件的默认参数会在”README”和”INSTALL”字样的文件中列出,有些要用”./configure –help”中查看到。所以,我一般会在编译之前看这个东东,软件编译出问题是在所难免的,记得看编译完后的最后几行内容,一般会告诉成功还是失败了,如果失败了,会提示你问题出在哪里,然后沿着线索解决问题…这个时候会考验你的基础、耐心…
4、安装rpm包。安装rpm常用指令格式是
rpm -ivh xx.xxx.xxxx
但是rpm包安装的依赖性问题很严重,版本高低、文件缺少这种问题简直是见怪不怪。有时候安装一个rpm包,结果提示依赖性文件整整一屏幕,这个时候,使用yum先把依赖性文件解决掉,然后安装rpm包。有些朋友可能会说可以用–nodeps强制安装,但我是不推荐这么做(–nodeps这个参数在卸载rpm包的时候可以经常用用),就是因为依赖性问题,即使被你强制安装了,很多情况下还是无法运行的。我是觉得不要在乎那么一点空间的,而且很多依赖性文件在其他软件安装、运行的时候也会用到,我自己安装rpm包的原则是:缺啥补啥,该安装的迟早要装的…
5、yum install。给我的感觉是,安装rpm包,经常要把yum拖出来溜溜解决依赖性问题,关系是在太密切了。有些朋友在yum install xx.xxx.xxxx的时候,提示信息:
No package xx.xxx.xxxx available.Nothing to do.
这个就是说源上面没有这个软件包,可以现用yum list命令检查一下有没有关于xxxx的安装包
yum list *xxxx*
这样你就不会盲打莽撞了。
6、添加第三方源。在上面这种情况,很可能在添加了第三方源就可解决了。第三方源可以yum一些在官方源yum不到的软件,目前大家常用的第三方源应该数linav、freshrpms、Fedora较多了,在这上面就可以yum install kmod-nvidia mplayer等等在官方yum不到东西。
7、添加DVD/CD镜像源(我不知道该用哪个术语比较好,就捏造“镜像源”吧,哈哈),因为多数依赖性文件是可以从DVD/CD上yum的,速度快,在没有网络的关键时刻可解你燃眉之急,所以,记得要备用,至于平时是否要disable,就看你自己的想法了。(好像现在下载的基本都是DVD ISO居多了)
在LINUX下安装软件多了,等积累一些基本错误解决办法后,那时候就能轻车熟路了,以上是个人的一点心得,如有错误,请指正,欢迎讨论。