LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 730|回复: 6

如何默认安装USE符合的二进制包

[复制链接]
发表于 2010-5-1 23:50:33 | 显示全部楼层 |阅读模式
如题
我在 FEATURES 里面写上了 usepkg,结果貌似还是默认编译,而后面那个就更不知道怎么写了……
所以现在使用 emerge (-pv) --usepkg --binpkg-respect-use y ebuild-name 的模式……
但是这样真的容易出错,特别是那个 y……

所以我希望这个能放到设置档里面去,但是不知道应该怎么写
求解决方法或者详细一些的 make.conf 说明
man里面貌似不够清楚
发表于 2010-5-2 08:52:01 | 显示全部楼层
我看了一下man,
Tells emerge to use binary packages (from $PKGDIR) if  they  are
              available,  thus possibly avoiding some time-consuming compiles.
              This  option  is  useful  for  CD  installs;  you   can   export
              PKGDIR=/mnt/cdrom/packages  and  then  use  this  option to have
              emerge "pull" binary packages from the CD in  order  to  satisfy
              dependencies.

这个选项只是方便你把cd中的二进制包导出到硬盘里直接用吧,另外portage中有二进制包的程序好像很少也就openoffice什么的才有的,其他的都只有源代码当然就要编译啦
回复 支持 反对

使用道具 举报

发表于 2010-5-2 12:23:14 | 显示全部楼层
首先,你得有二进制包才行,具体的办法是在编译的过程中使用 -b 开关,或者在make.conf里设定FEATURES="buildpkg",这样就会在emerge完每个包后在PKGDIR里面生成二进制包,默认是在/usr/portage/packages/app-admin/abc-1.2.3.tbz2。

emerge的时候,如果在PKGDIR有了对应的二进制包,那使用-k开关可以使用二进制包安装。

但是这个过程(好像)并不检查二进制包的USE(在没有安装之前就把每个包解开是不可想象的),所以即使USE变了,使用了-k开关后安装的包还是原先的USE,这就可能导致错误。所以在USE还不稳定、变动比较频繁的时候,在FEATURES里设定usepkg是不合适的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-5-2 12:40:53 | 显示全部楼层
Post by jsun;2087183
首先,你得有二进制包才行,具体的办法是在编译的过程中使用 -b 开关,或者在make.conf里设定FEATURES="buildpkg",这样就会在emerge完每个包后在PKGDIR里面生成二进制包,默认是在/usr/portage/packages/app-admin/abc-1.2.3.tbz2。

emerge的时候,如果在PKGDIR有了对应的二进制包,那使用-k开关可以使用二进制包安装。

但是这个过程(好像)并不检查二进制包的USE(在没有安装之前就把每个包解开是不可想象的),所以即使USE变了,使用了-k开关后安装的包还是原先的USE,这就可能导致错误。所以在USE还不稳定、变动比较频繁的时候,在FEATURES里设定usepkg是不合适的。


所以我加上了 --binpkg-respect-use y 参数,以保证USE参数的一致性
usepkg 实际上是无效参数……
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-5-2 12:43:08 | 显示全部楼层
Post by luoleicn;2087138
我看了一下man,
Tells emerge to use binary packages (from $PKGDIR) if  they  are
              available,  thus possibly avoiding some time-consuming compiles.
              This  option  is  useful  for  CD  installs;  you   can   export
              PKGDIR=/mnt/cdrom/packages  and  then  use  this  option to have
              emerge "pull" binary packages from the CD in  order  to  satisfy
              dependencies.

这个选项只是方便你把cd中的二进制包导出到硬盘里直接用吧,另外portage中有二进制包的程序好像很少也就openoffice什么的才有的,其他的都只有源代码当然就要编译啦


这个主要是让我给朋友安装时可以快速一点而已
回复 支持 反对

使用道具 举报

发表于 2010-5-2 13:08:40 | 显示全部楼层
Post by 冬腌菜;2087188
所以我加上了 --binpkg-respect-use y 参数,以保证USE参数的一致性
usepkg 实际上是无效参数……
你的无效指的是什么意思?是无用?还是不起作用?

在我这里是起作用的,emerge -kav xxx的时候,如果这个包有tbz2,那原来显示[ebuile   R   ]的地方就会变成[binary   R   ]

这在emerge -ek world 的时候非常明显。很快就可以重新建立一个新系统。

如果你的是不起作用,那么请检查
ls $PKGDIR
里面是否有内容,如果根本就没有二进制包,那。。。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-5-2 13:16:36 | 显示全部楼层
Post by jsun;2087197
你的无效指的是什么意思?是无用?还是不起作用?

在我这里是起作用的,emerge -kav xxx的时候,如果这个包有tbz2,那原来显示[ebuile   R   ]的地方就会变成[binary   R   ]

这在emerge -ek world 的时候非常明显。很快就可以重新建立一个新系统。

如果你的是不起作用,那么请检查
ls $PKGDIR
里面是否有内容,如果根本就没有二进制包,那。。。。。


我说的是在 FEATURES 里面添上 usepkg 是没用的,否则我前面也不会说手动用
emerge (-pv) --usepkg --binpkg-respect-use y something
的命令了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表