LinuxSir.cn,穿越时空的Linuxsir!

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

亲身体验到USE flag的重要性

[复制链接]
发表于 2010-9-28 16:35:26 | 显示全部楼层 |阅读模式
前段时间,在gentoo中安装wbar,一切顺利,但运行时却不见反应。终端中运行,提示找不到主题所需的png图像。觉得挺纳闷的,这些图像都在,而且路径也完全正确,怎么就找不着呢?
    以错误提示为关键词在网上搜索,结果大都不着边际。有一篇提到在ubuntu中安装wbar,出现相同错误,可以重装libImlib2-dev包即可解决,这倒一下就提醒了我。我记得imlib2是wbar所依赖的包,emerge wbar时自动就安上了,没有额外指定USE标记,imlib2不能处理png图像,wbar也就傻眼了。试着用sudo USE="png" emerge imlib2重新安装imlib2包,一切OK!
    记得以前安装gimp时也是没有用png标记,结果编译的gimp不能处理保存png图像;安装thunar和pcmanfm时没用hal标记,结果插入USB移动硬盘时thunar和pcmanfm都没有反应;安装fluxbox后菜单、工具栏、窗口标题中的中文全是乱码,网上搜索也没有解决问题,只得用了两个多月的英文菜单,我倒没有问题,老婆不习惯,经常埋怨。后来在gentoo wiki上看到有truetype(FreeType font rendering)的USE标记可用,于是sudo USE="truetype" emerge fluxbox重新安装fluxbox,终于摆脱中文乱码的困扰了。
    细细想来,我以往用的suse,rh9,ubuntu都是用的别人预先编译好的软件,别人编译时,会照顾大多数人的需要,打开尽可能多的功能选项,我们习惯了,也就容易忽略了。现在用gentoo,一切都是自己定制,自己要用的功能也许在ebuild中没有打开,ebuild中打开的功能也许对我们以没有用,这时用好USE flag就显得特别重要了。
    现在我把多数软件都要用到的USE flag添加到/etc/make.conf文件中,作为全局的USE flag设定,而个别软件的USE flag则在emerge时通过USE="XXX"指定。安装软件后,如果遇到某项功能无法实现时,我都会在gentoo wiki上看看有没有对应的USE flag可用,这样还不行的话,我就会在/usr/portage/distfiles目录中把源码包找出,解压到某个目录,运行./configure --help查看编译选项,看看是否有哪个选项被关闭了。如果真是被关闭,就添加上USE="XXX"重新emerge,多数时候都很管用。
发表于 2010-9-28 17:45:37 | 显示全部楼层
# eselect profile list


最好置成合适自己的,这样可以省不少麻烦。
回复 支持 反对

使用道具 举报

发表于 2010-9-28 21:07:34 | 显示全部楼层
有这么麻烦么?
equery u xxx查看详细信息
emerge -tpv xxx查看安装会用那些use
我都是习惯/etc/portage/package.use
回复 支持 反对

使用道具 举报

发表于 2010-9-29 18:30:04 | 显示全部楼层
用USE="XXX" emerge安装不是好习惯,因为这样就没办法使用
emerge -uDNpv world来维护系统更新了

全局的use flag添加到/etc/make.conf中
软件包个别的use flag也不要用USE=安装,而是把use flag添加到/etc/portage/package.use中,这样才便于管理和跟踪系统的软件包的安装情况
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-9-30 07:43:42 | 显示全部楼层
楼上几位,受教了。以往我是用USE="XXX" emerge安装完,觉得合适以后再写入/etc/portage/package.use中,以备重新安装之用,现在可以改改这习惯了!
回复 支持 反对

使用道具 举报

发表于 2010-9-30 11:13:00 | 显示全部楼层
最好是用/etc/portage/package.use设置USE
回复 支持 反对

使用道具 举报

发表于 2010-9-30 20:17:00 | 显示全部楼层
Post by meteo;2113754
用USE="XXX" emerge安装不是好习惯,因为这样就没办法使用
emerge -uDNpv world来维护系统更新了


终于明白了为什么官网不提倡直接使用USE=“XXX” emerge,原来如此,谢谢meteo兄~
回复 支持 反对

使用道具 举报

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

本版积分规则

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