+ -
当前位置:首页 → 问答吧 → 安装软件的一些想法

安装软件的一些想法

时间:2006-03-14

来源:互联网

gentoo安装软件有其特色,大家都深深体会到,不再多说,gentoo还有一种比较原始的安装方法是ebuild,它提供更细致的调节,老实说我对此没多大研究,这样可以满足绝大部分安装软件的要求了.
有时候一些特殊软件安装会出现什么情况呢?
我安装mplayer时,要求是支持rmvb,(不想再多装一个播放器),即使我在USE添加相应选项都不获得支持,显示是没包,所以我装mplayer都是手动安装,下载mplayer的all包,一切都是标准安装法:解压,configure --xxx --xxx......,make,make install,不使用gentoo的作法.
还有如果装apache时,有很多模块,需要调节安装,用USE参数难为,或不可为,还是手动好.(一般装apache不用如此,专业网站可能需要)
突然间头脑发热,想了个歪注意:LFS不正是如此吗?何不用gentoo的架构,所有软件都用emerge -- fetchonly 下载,再来 configure --......,make,make install,方便,又快捷,既有gentoo的特色,又有LFS的性能...........
近来得了妄想症,小心传染....出去走走,清醒清醒.....

作者: 抽烟斗的狗   发布时间: 2006-03-14

本来就可以 但是不好管理 更新麻烦 难道一有更新你就一个个包的去下 然后手动make?

作者: fakeid   发布时间: 2006-03-14

引用:
作者: 抽烟斗的狗
...
我安装mplayer时,要求是支持rmvb,(不想再多装一个播放器),即使我在USE添加相应选项都不获得支持,显示是没包,所以我装mplayer都是手动安装,下载mplayer的all包,一切都是标准安装法:解压,configure --xxx --xxx......,make,make install,不使用gentoo的作法.
.....
我从来都是通过use安装的,支持rmvb没问题。

Apache的安装可参考:http://gentoo-wiki.com/Index:HOWTO#Apache_Related

作者: kohno   发布时间: 2006-03-14

just simply change mplayer.ebuild to realize that install mplayer with Realvideo support but no realplayer has been installed.
Change pkg_setup()
代码:
pkg_setup() {
 if use real && use x86; then
 REALLIBDIR="/usr/lib/real"
 fi
}
Remove following line
代码:
 x86? ( real? ( >=media-video/realplayer-10.0.3 ) )

作者: gamedragon   发布时间: 2006-03-15

use是有些讨厌,不用的话,有的功能就没有,上网很不方便;加多了,其他软件又会受到影响,为什么不能有一个默认的设置,满足大多数人的使用要求;比如,vim语法加亮,mozilla/firefox能够显示pdf,xine/mplayer能播放绝大多数软件,k3b支持DVD+R,DVD-R,普通用户安装时就省去很多麻烦。安装gentoo很费时间,普通用户都会把软件不能正常工作原因归罪为Gentoo的缺陷,2,3安装不好就不用了。

作者: 小楼东风   发布时间: 2006-03-15

想说的是:有时暂时抛开gentoo的安装法,用用最原始的安装法,还来得简便,和灵活.
对于一些高度定制的软件,我以后会尝试用回原始安装法,不局限框框,才是开源.

作者: 抽烟斗的狗   发布时间: 2006-03-15

引用:
作者: 抽烟斗的狗
想说的是:有时暂时抛开gentoo的安装法,用用最原始的安装法,还来得简便,和灵活.
对于一些高度定制的软件,我以后会尝试用回原始安装法,不局限框框,才是开源.
自己改改ebuild放到overlay里不也一样么
这也是不局限于框框

作者: zhllg   发布时间: 2006-03-15

来 LFS 吧,如果哪个发行版能比 LFS 更原始的话,那一定就是SFS。(Scratch From Scratch)。。。嘿嘿。

作者: 晨想   发布时间: 2006-03-15

让我的想法发挥到极致:只让gentoo负责下载,用原始的编译法,抛开USE参数,会得出什么样的系统,它还叫gentoo吗?

作者: 抽烟斗的狗   发布时间: 2006-03-15

引用:
作者: 抽烟斗的狗
让我的想法发挥到极致:只让gentoo负责下载,用原始的编译法,抛开USE参数,会得出什么样的系统,它还叫gentoo吗?
USE是Gentoo最有特色的东西,用Gentoo而不下工夫学好怎样善用USE就象是在闹市开法拉利一样。

作者: kohno   发布时间: 2006-03-15

USE 似乎没什么需要学的,就是把一些常用的功能归类。如果功能上允许实现的话,就把那个 --with-XXX 加上。地球人都知道怎么用。。。(嘿嘿)。

作者: 晨想   发布时间: 2006-03-15

ebuild 自己写一个应该不难啊. ——写好了,还可以分享给社区。
就是照猫画虎而已阿。

但是ebuild也不是万能的,很多很老的软件需要手动加入很多patch,比如simplescalar, 只能老老实实的configure, make了。

作者: bookstack   发布时间: 2006-03-15

只要是命令可以完成的都可以写进ebuild

最坏的情况,假设这个补丁必须手工编辑,
那编辑好之后自己diff一下生成个patch应该是可以的吧
然后据此写个ebuild不就得了

作者: zhllg   发布时间: 2006-03-15

引用:
作者: 终极幻想
USE 似乎没什么需要学的,就是把一些常用的功能归类。如果功能上允许实现的话,就把那个 --with-XXX 加上。地球人都知道怎么用。。。(嘿嘿)。
那LZ为什么搞不定mplayer?

作者: kohno   发布时间: 2006-03-15

引用:
作者: kohno
那LZ为什么搞不定mplayer?
这个问题可是你提出的噢,那你觉得楼主是哪里人?。。。

其实 ebuild 就是一个脚本,但是按照一定格式写的。也许是楼主的 USE 没有设置对咯。那么多选择,我看了都头大了。。。。。

作者: 晨想   发布时间: 2006-03-15

引用:
作者: bookstack
...
但是ebuild也不是万能的,很多很老的软件需要手动加入很多patch,比如simplescalar, 只能老老实实的configure, make了。
这个可以
# ebuild /path/to/xxx.ebuild unpack
手动加入patch
# ebuild /path/to/xxx.ebuild merge

作者: kohno   发布时间: 2006-03-15

引用:
作者: kohno
这个可以
# ebuild /path/to/xxx.ebuild unpack
手动加入patch
# ebuild /path/to/xxx.ebuild merge
问题在于很多patch是在configure之后打上去的,算了吧,还是手动编译。

作者: bookstack   发布时间: 2006-03-15

那想必改的是autotools生成的文件,比如configure, Makefile
不过那样的补丁应该也不是什么版本的autotools都可以用的
与其那样,不如自己改configure.ac,Makefile.am,然后弄个补丁
用ebuild打上

作者: zhllg   发布时间: 2006-03-15

好像configure不是用autoconf生成的,
离题太远了,就此打住吧。

作者: bookstack   发布时间: 2006-03-15

To create `configure' from `configure.ac', run the `autoconf' program with no arguments.
这是info autoconf里的第一句话

我前面说的也不太对
应该只是改Makefile
不管怎样理解意思就好了

作者: zhllg   发布时间: 2006-03-15