emmmm 没错 我终于开写了
首先简单介绍下Portage:
/usr/portage/distfiles
是否有此源码文件USE:
这个东西在Gentoo里面很重要,在这里我就打个比方:
假如你想搭个房子,一般的发行版是给你一个标准套房,想要别的功能需要另外装修或购买家具(例如语言包)
但如果想彻底改变,一般发行版除了自己编译时调整参数是不可能做到的
Gentoo作为几乎所有软件都需要编译的系统,但是软件如此之多,怎么样才能保证统一性?这时候就有了USE:
USE你可以看做全局或单一软件的编译参数,假如我想让这个包有Python支持或支持Python就加上python
这个USE
再假如你想让这个程序能有GTK的支持就加上gtk
这个USE
再或者你可以通过USE改变这个包的类型:比如你不想使用任何闭源的东西,则加上bindist
这个USE(gentoo是默认加上的),不过作为普通用户你应该改成-bindist
与前面的意思相反
我知道你应该在想了,这么多USE,我怎么知道怎么配置:你不需要了解所有的USE,接下来就会说明白了
在安装gentoo的时候 有个选择profile的步骤,其实那个时候就是在配置USE了,你当前的USE可以通过运行emerge --info
看到完整的信息
所以,除了将make.conf
中的bindist
改成-bindist
,其它特殊需要或你没有选择profile以外你不需要自己配置USE
但是我又该如何知道有哪些USE?很简单,在每次安装软件或者更新的时候加上-v
参数即可,例如平时安装软件是'emerge -a xxx',改成emerge -av xxx
即可.
通过上面的说明你可能已经知道了 -xxx即禁用状态,可以在make.conf
中声明
USE在make.conf
声明了一大堆不方便管理怎么办,这里简单说个技巧
你可以在make.conf
中声明个One
Two
Three
:
One="USE-1 USE-2 USE-3"
Two="USE-4 USE-5 USE-6"
Three="USE-7 USE-8 USE-9"
USE="${One} ${Two} ${Three}"
你看 这样是不是更方便管理了(注意变量名不要和其它变量冲突)
关于下载源码,有时候你指定了镜像站却还是下载很慢 那是因为有些源码并不是从镜像站下载,而是直接从官网下载,而在中国这个局域网,下载起来。。。。
这时候你可以选择临时设置代理:
export https_proxy=127.0.0.1:8118
export http_proxy=127.0.0.1:8118
这里仅供示例 具体的ip和端口根据实际情况更改
但是我没有代理怎么办,如果你有国外vps什么的,在/var/log/emerge-fetch.log
找到下载链接在vps上下载之后再通过ftp或http下载到/usr/portage/disfiles
(记得覆盖或删除先前的源码)
export http_proxy=127.0.0.1:8118 一般代理设置是 本地服务器+本地端口,还是远程服务器+远程端口?
俩者都可以 不过我一般都是用的ss 在本地有端口为代理
小伙,blog长草了......
才没有 =.=
test