• Gentoo关于USE设定


    非原创,只是汇总一下网上比较杂乱的资料,希望对刚接触的朋友有帮助
    USE是Gentoo的特色
    gentoo下的软件安装由源代码编译,所以可以自由选择哪些功能需要哪别不需要,很简单的一个例子就是比如你使用的是gnome,那么在安装某个软件时就无需浪费精力去支持kde.
    关于USE,官方文档的解释如下 :

    USE标记
    内容:USE标记是什么? 使用USE标记 包特有的USE标记
    2.a. USE标记是什么?

    USE标记的指导思想
    你在安装gentoo(或者是其他发行版,甚至于其他特定操作系统)的时候,你要依据你工作的环境做出选择。服务器跟工作站的组织结构不同,游戏机跟3D工作站也会不一样。
    不单只是选择你想要安装的包时如此,选择某一个包需要的特性时同样如此。如果你不需要OpenGL,为什么还要颇费周折的安装OpenGL并在其他包中加 入对OpenGL的支持?如果你不想用KDE,而且软件包没有KDE也能完美运行,为什么还要在编译这些包的时候加入KDE支持?
    为了帮用户判断什么需要安装或激活,什么不需要;我们希望用户能用简单的方式设定他们自己的环境。这能促使用户判断他真正需要的东西,并让Portage(我们的包管理系统)做出有用的决定的过程变得简单。
    USE标记的设定
    我们来具体看看USE标记。每一个标记都是代表对某特定概念的支持和依赖关系信息的关键字。如果你设定了某个USE标记,Portage会明白你选择了支持这个关键字(所代表的概念)。当然这同时也改变了这个包的依赖关系信息。

    让我们看一个示例:关键字kde。如果你的USE变量里面没有这个关键字,所有具有可选KDE支持的包在编译时都不会编译KDE支持。所有具有可选KDE依赖关系的包在安装时都不会(做为一个依赖关系而)安装KDE库。如果你设定了kde关键字,这些包在安装时都会编译KDE支持,而且KDE库也会(作为一个依赖关系而)被安装。
    通过正确设定关键字,你会得到一个根据你的需要而定制的系统。
    有哪些USE标记?
    USE标记分两类:全局和局部USE标记。

    全局USE标记适用范围是整个系统,可以被许多包使用。这就是大多数人眼里的USE标记。 局部USE标记只被单个包用来做该包特有的决定。
    当前可用的全局USE标记列表可以在网上或者本机的/usr/portage/profiles/use.desc文件里找到。
    当前可用的局部USE标记列表可以在本机的/usr/portage/profiles/use.local.desc 文件里找到。
    2.b. 使用USE标记
    声明永久USE标记
    希望您已经意识到了USE标记的重要性,现在我们就让你了解怎样声明USE标记。
    就像前面提到的,所有USE标记都声明在USE变量里面。为了让用户能方便地查找和选择USE标记,我们提供了一份默认的USE设定。这些设定是我们觉得Gentoo用户通常都要用到的USE标记的集合。这个默认设置在make.defaults文件──你的profile的一部分──里声明。
    你的系统使用的profile是符号链接/etc/make.profile所指向的目录。每个profile叠加于某个更大的profile之上,最终的结果是这些profile的并集。初始profile是base profile(/usr/portage/profiles/base)。
    让我们看看2004.3 profile的默认设定:

    代码 2.1: 2004.3 profile的累积make.defaults USE标记
    (这个例子是base,default-linux,default-linux/x86和 default-linux/x86/2004.3的设定的并集)USE="x86 oss apm arts avi berkdb bitmap-fonts crypt cups encode fortran f77 foomaticdb gdbm gif gpm gtk imlib jpeg kde gnome libg++ libwww mad mikmod motif mpeg ncurses nls oggvorbis opengl pam pdflib png python qt quicktime readline sdl spell ssl svga tcpd truetype X xml2 xmms xv zlib"就像你看到的那样,这个变量已经包括了非常多的关键字。不要通过修改make.defaults文件里的USE变量来满足你的需要:在升级Portage的时候,这个文件将会被破坏(被覆盖)。
    要改变这个默认设置,你需要在USE变量里添加或移去关键字。这是通过在/etc/make.conf里定义USE全局变量来实现的。在这个变量里,添加你需要的额外的USE标记,或者移去你不需要的USE标记。后者可通过在标记前面加个负号(“-”)前缀来实现。
    例如,要移除对KDE和QT的支持,并添加对ldap的支持,可以在/etc/make.conf 里声明USE如下:

    代码 2.2: /etc/make.conf里关于USE设置的一个例子
    USE="-kde -qt3 -qt4 ldap"为单个包声明USE标记
    如果你想要为一个(或者几个)程序而不是系统范围内声明一个USE标记,你需要创建/etc/portage目录(如果没有这个目录的话),然后编辑/etc/portage/package.use文件。通常这是一个文件,不过它也可以是一个目录;请看man portage以获得更多信息。下面的例子假设package.use是一个文件。
    比如说,如果你不想全局的启用berkdb支持,但是你想把它应用到mysql,你可以这样:

    代码 2.3: /etc/portage/package.use示例
    dev-db/mysql berkdb你当然也可以直接为某一个程序禁用USE标记。比如说,如果你不想要PHP的java支持:

    代码 2.4: /etc/portage/package.use第二个示例
    dev-php/php -java声明临时USE标记
    有时,你只想暂时改变一个USE设置。你可以仅仅把USE变量声明成一个环境变量,而不必两次修改/etc/make.conf。但是要记住,当你重新emerge或者升级这个程序的时候(不管是单独地还是作为系统升级的一部分),你的修改都会丢失!
    下面的例子我们将在安装seamonkey的时候暂时性地从USE设置中移去java标记。

    代码 2.5: 将USE作为一个环境变量使用
    # USE="-java" emerge seamonkey优先级
    当然,我们需要一个明确的先后次序来决定何处的USE设定优先级较高。你肯定不希望在定义了USE="-java"之后,因为某个有更高优先级的设定而导致java仍然被使用。USE设定的优先级顺序是(由低到高):
    make.defaults里面的USE默认设定 用户在/etc/make.conf里面的USE设定 用户在/etc/portage/package.use里面的USE设定 作为环境变量的USE设定
    运行emerge --info可以看到Portage识别的最终的USE设定。它会列出Portage使用的所有相关变量(包括USE变量)。

    代码 2.6: 运行emerge --info
    # emerge --info
    --------------------------------------------------------------------------------------------------

    为了更有效的使用USE
    我是先在/etc/make.conf下设定总的use
    再去/etc/portage/packge.use中针对个别软件设置use
    我的设置如下
    ceyes@gentoo:~% cat /etc/make.conf 11-11-04 20:39
    # These settings were set by the catalyst build script that automatically
    # built this stage.
    # Please consult /usr/share/portage/config/make.conf.example for a more
    # detailed example.
    CFLAGS="-O2 -march=native -pipe"
    CXXFLAGS="${CFLAGS}"

    # WARNING: Changing your CHOST is not something that should be done lightly.
    # Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.
    CHOST="i686-pc-linux-gnu"
    LINGUAS="en"
    GENTOO_MIRRORS="http://mirrors.163.com/gentoo/"
    SYNC="rsync://mirrors.163.com/gentoo-portage"
    MAKEOPTS="-j3"
    PORTDIR_OVERLAY=/usr/local/portage
    USE=" -* alsa apm crypt dbus encode exif ftp gnome grub gtk gtk2 gtkhtml icu iconv imagemagick imlib imlib2 jpeg lame mad mozilla mp3 mp4 mpeg mplayer ncurses nptl oggvorbis opengl pdf pam png psyco python rdesktop readline samba sasl sdl spell tcpd truetype unicode usb X xml xml2 xscreensaver zlib "
    ceyes@gentoo:~% cat /etc/portage/package.use 11-11-04 21:05
    pp-admin/conky tvim-syntax ruetype audacious -ipv6
    net-www/mozilla -java moznocompose moznoirc moznomail
    media-gfx/gimp mng svg
    app-editors/gvim perl
    media-sound/xmms -opengl
    media-video/mplayer divx4linux xvid xv theora
    net-im/gaim -crypt
    =sys-devel/gcc-3.3* java gcj
    app-shells/zsh maildir pcre
    x11-wm/fvwm stroke
    media-video/avidemux xvid
    media-libs/libsamplerate sndfile
    www-client/chromium -gnome vi zh_CN
    app-office/dia -gnome -python
    关于每个USE的意义,可以单独去查询
    为了方便,参考了一论坛网友的总结

    3dfx
    添加Xorg下的3dfx显卡支持 (参见: voodoo3)
    3dnow
    添加AMD处理器的3dnow!多媒体指令集支持
    X
    添加X11支持
    Xaw3d
    添加Xaw3d(X athena widgets in 3d)支持。Xaw3d是MIT Athena Widget set for X Windows的增强版本,可以在几乎不修改源代码的情况下为应用程序添加3D视觉效果。
    a52
    添加用于DVD的ATSC A/52解码支持
    aac
    添加MPEG-4 AAC音频支持
    aalib
    添加media-libs/aalib支持 (ASCII-Graphics库) (用于将图形转换成ASCII字符的”ascii艺术”)
    accessibility
    添加辅助功能支持(方便残疾人使用计算机的技术,比如’at-spi’库)
    acl
    添加文件访问控制列表支持[参考文档:文件访问控制列表]
    acpi
    添加ACPI(高级配置与电源接口)支持[参考文档:高级电源管理常见问题解答]
    adabas
    添加Adabas数据库引擎支持
    adns
    添加adns DNS客户端库(一个用于C/C++的异步DNS解析库)支持[主页:http://www.gnu.org/software/adns/]
    afs
    添加OpenAFS支持 (一个分布式文件系统)[参考文档:OpenAFS帮助聚集分布式数据]
    aim
    添加AIM即时通信协议支持 (AOL.com的即时消息工具)
    alsa
    添加media-libs/alsa-lib支持 (高级Linux音效架构)[参考文档:ALSA研究笔记]
    altivec
    添加G4/G5/ppc970处理器优化支持
    ao
    在音频回放(sound playback)时使用libao音频库(一个跨平台音频库,对于在多个平台上输出音频很有用)
    apache2
    当一个程序包同时支持Apache1和Apache2时,选择支持Apache2
    apm
    添加APM电源管理支持[参考文档:高级电源管理常见问题解答]
    arts
    添加aRts支持 (给KDE提供音频支持,主要是给KDE库提供必要的库文件)
    atm
    添加ATM(异步传输模式)协议支持
    audiofile
    添加libaudiofile(音频文件库)支持
    avahi
    添加avahi/Zeroconf支持。avahi是利用mDNS协议的,实现本地网内服务发现的软件,如寻找局域网内的在线用户、打印机等。
    aqua
    添加Aqua/Carbon GUI支持。Aqua是苹果Mac OS X的图形界面,Carbon是其编程接口。
    bash-completion
    添加bash-completiton支持 (改进了bash的命令补全功能)
    bcmath
    添加libbcmath支持 (bcmath是一个任意精度数学函数库)
    berkdb
    添加sys-libs/db支持 (MySQL的Berkeley DB表类型支持)
    bidi
    添加双向语言支持 (支持由右而左的语言,如:阿拉伯语和希伯来语)
    bindist
    启用或禁止可选的预编译包(GRP)支持 (比如由于发行许可导致的)
    birdstep
    添加Birdstep数据库服务器支持
    blas
    添加virtual/blas库支持 (BLAS是著名的基本线性代数子程序包,被许多实际应用问题和几乎所有有关矩阵计算的软件所采用,可应用于科学和工程设计的矩阵计算问题,也可应用于生产基本线性代数计算的高水平程序库,是数学应用软件的基本核心库。)
    bluetooth
    添加蓝牙支持
    bootstrap
    !!仅供内部使用,请不要设置此参数!!在原始系统的引导过程中使用[make stage2]
    boundschecking
    添加Haj Ten Brugge边界检查补丁,这将禁用固有的PIE+SSP补丁 (边界检查用于防止缓冲区溢出漏洞攻击)
    branding
    启用Gentoo特定的标识,比如添加此标记后可以获得一个漂亮的”Gentoo牌”Gnome启动画面,取代默认的Gnome启动画面。
    bsf
    添加Apache BSF(Bean Scripting Framework) (dev-java/bsf)支持。BSF支持在Java应用程序内调用脚步语言(Script),并且支持脚步语言直接访问Java对象和方法。它提供了完整的API实现通过Java访问脚本语言的引擎。
    build
    !!仅供内部使用,请不要设置此参数!! 用于建立引导过程前半部分的镜像构建[make stage1]
    bzip2
    使用bzlib压缩库
    cairo
    添加cairo图形库支持。Cairo是一个支持多种输出设备的跨平台2D图形库。[参考文档:用cairo实现跨平台图形]
    calendar
    添加日历支持(不是用mcal!)
    canna
    添加Canna支持 (Canna是一个将日文假名转换到日文汉字的转换引擎)
    caps
    使用Linux capabilities库(POSIX.1e capabilities)来控制权限[参考文档:Linux安全模块简介;利用capability特征加强Linux系统安全]
    cdb
    添加qmail作者编写的CDB数据库引擎支持
    cdda
    添加Compact Disk Digital Audio(数字式激光唱盘,简称CD-DA)支持。CD-DA又称”Audio CD”,直径为12cm,容量为74分钟,以恒线速度(CLV)播放,也就是用于激光唱机和diskman的音乐CD。
    cddb
    添加CDDB支持。CDDB即Internet Compact Disc Database,是一组分布于互联网的各个镜像上的大型CD特征数据库,不过它现在已被商业团体安加了一些版权限制,因此存在后来的freedb.org和MusiaBrainz一类开放替代方案。
    cdinstall
    直接从CD复制文件而不要求用户来操作,主要用于游戏。
    cdparanoia
    添加cdparanoia支持。CDParanoia可以直接从CD光盘上抓取音轨,并转换成其它格式的声音文件。另外它还可以能够读取已经被破坏的光盘内容。libparanoia 是KDE和GNOME默认的抓音轨库。
    cdr
    添加CD刻录硬件支持
    cgi
    添加CGI脚本支持
    chasen
    添加chasen支持 (一个日语分词标注系统)
    cjk
    添加多字节字符语言支持 (中日韩)
    clamav
    添加Clam防病毒软件支持(通常是额外添加一个插件)
    coreaudio
    在Mac OS X系统上编译CoreAudio驱动程序
    cracklib
    使用cracklib来进行密码强度检查
    crypt
    添加加密支持 (使用基于私钥的mcrypt或基于公钥的gpg)
    cscope
    添加cscope接口支持 (比如用于vim和emacs)(cscope具有开发支持功能,极大地方便了对源代码库的浏览和查询,vim中内置的ctags支持提供了类似的功能,但cscope的功能更为强大)
    css
    允许抓取加密DVD上的数据
    ctype
    启用ctype函数支持 (ANSI C标准库中的字符类型头文件)
    cups
    添加CUPS(通用UNIX打印系统)支持
    curl
    添加客户端URL传输库支持 (curl是一个可以使用URL语法传输文件的库,支持HTTP/HTTPS/FTP/FTPS/DICT/TELNET/LDAP/FILE和GOPHER等协议)
    curlwrappers
    在传输流中使用curl包装
    custom-cflags
    使用自定义的CFLAGS编译(unsupported)
    custom-cxxflags
    使用自定义的CXXFLAGS编译(unsupported)
    cvs
    启用CVS(Concurrent Versions System)集成
    cxx
    编译C++支持(绑定,额外的库,代码生成, …)
    db2
    添加IBM DB2数据库支持
    dbase
    添加dbase文件格式(Dbase数据库文件.DBF的文件格式)支持
    dbm
    添加DBM数据库支持 (DBM是柏克莱大学发展的文件/文本型数据库)
    dbmaker
    添加dbmaker数据库支持
    dbus
    为需要dbus的程序添加支持 (gpsd,gnomemeeting …)(dbus是一个消息总线系统,用于在应用程序中发送消息,多用于桌面环境)[主页:http://www.freedesktop.org/Software/dbus]
    dbx
    添加数据库抽象层支持 (目的是提供给用户一种访问数据库的通用方式)
    debug
    让configure和makefiles使用调试模式编译
    dedicated
    添加专属游戏服务器支持(一些程序包并不同时支持服务端和客户端)
    dga
    添加Xorg下的DGA(直接图形存取)支持
    directfb
    添加DirectFB支持。[参考文档:DirectFB的学习]
    djvu
    添加DjVu支持。一个类似于PDF的文档格式,特别适合于扫描文档。
    doc
    添加额外的文档资料(API/java文档等)
    dri
    支持DRI硬件3D加速。直接渲染架构(DRI)是一个允许在安全和高效的方式下直接访问显卡硬件的架构。它包括对X服务器的改动,以及对几个客户端库和内核的改动。DRI的第一个重要应用是创建快速的OpenGL实现。
    dts
    启用DTS声音解码器支持。
    dv
    添加一种被许多便携式摄象机使用的编解码器支持
    dvb
    添加DVB支持 (DVB: 数字视频广播)
    dvd
    添加DVD支持
    dvdr
    添加DVD刻录硬件支持 (比如:xcdroast)
    eds
    添加Evolution-Data-Server支持。我们可以简单地把Evolution看作是Linux下的OutLook,一个易用的电子邮件客户端。但它的定位是Linux/Unix下的个人/工作组信息管理整套解决方案,包括电子邮件、日历、会议计划、联系人管理与任务列表等。
    emacs
    添加GNU Emacs支持
    emboss
    添加EMBOSS支持 (EMBOSS:欧洲分子生物学开放软件包,能很好的处理分子生物学研究中的各种问题)
    empress
    添加Empress数据库支持
    empress-bcs
    添加Empress数据库本地存取支持
    encode
    添加视频和音频文件的多媒体编码器支持
    enscript
    添加enscript支持。Enscript可将ASCII文件转换为PostScript,HTML,RTF,ANSI格式。
    esd
    添加media-sound/esound支持 (一种KDE的音效合成器)
    esoob
    添加Easysoft OOD数据库支持
    evo
    添加mail-client/evolution支持 (Evolution类似微软的Outlook,将电子邮件、日历、联系人管理和任务集成到一个易用的应用程序中)
    examples
    安装示例源代码
    exif
    添加读取JPEG和TIFF图片EXIF头信息的支持 (EXIF: 可交换图像文件,实际是一种JPEG文件,是专门为数码相机的照片设定的,可以记录数字照片的属性信息和拍摄数据)
    expat
    允许使用dev-libs/expat (EXPAT是一个XML解析器,可用于PHP,Perl,Python等)
    fam
    添加FAM支持 (FAM: 文件变更监视模块,能实时地观察文件系统的变化情况,并做出及时的适当的反应)[参考文档:Linux下的实时数据镜像]
    fastcgi
    添加FastCGI接口支持 (CGI: 公共网关接口)
    fbcon
    在内核中为控制台添加framebuffer支持 (FrameBuffer: 帧缓冲,是把显存抽象后的一种设备,可以通过这个设备的读写直接对显存进行操作)
    ffmpeg
    添加ffmpeg多媒体解码器支持
    fftw
    使用FFTW库进行傅立叶变换计算 (FFTW: 快速傅立叶变换,用于一维和多维实数或复数的离散傅里叶变换,有些多媒体音效需要fftw)
    firebird
    添加Firebird数据库支持
    firefox
    基于Firefox编译,而不是基于Seamonkey/Mozilla编译
    flac
    添加FLAC音频编码支持 (FLAC是一个类似APE的无损编码方案,但容错性能要优于APE)
    flatfile
    为平面文件(flat file)添加dbm支持[参考文档:平面文件]
    fltk
    为FLTK库提供支持。FLTK(Fast Light Toolkit)是一个基于OpenGL的跨平台C++图形化用户界面工具集。
    fontconfig
    允许通过media-libs/fontconfig工具配置和定制字体
    foomaticdb
    支持foomatic打印机驱动程序数据库
    fortran
    添加fortran(f77)支持
    freetds
    允许使用TDS协议连接MSSQL/Sybase数据库
    freewnn
    添加FreeWnn支持 (FreeWnn是一个将日文假名转换到日文汉字的转换引擎)
    frontbase
    添加frontbase数据库支持
    ftp
    添加FTP(文件传输协议)支持
    gcj
    添加GCJ支持 (GCC中的JAVA编译器)
    gd
    添加media-libs/gd支持 (gd库用于动态生成图片)
    gd-external
    使用外部的gd版本取代内置的版本(可能有些危险)
    gdbm
    添加sys-libs/gdbm支持 (GNU数据库函数库)
    geoip
    添加GeoIP支持 (GeoIP一个识别你Web网站访问者的所在国家的工具)
    ggi
    添加media-libs/libggi支持 (非X窗口的视频api/drivers)
    gif
    添加GIF图片格式支持
    gimp
    为GIMP额外编译一个插件
    ginac
    添加sci-mathematics/ginac(符号数学)支持(GiNaC是一个C++数学计算函数库,主要用于编写科学和工程上使用的计算器)
    glut
    使用GLUT库编译一个OpenGL插件
    gmp
    添加dev-libs/gmp支持 (GUN MP库允许你使用任意长度的整数)
    gnome
    添加GNOME支持
    gnome-keyring
    支持通过gnome-keyring保存密码
    gnuplot
    添加gnuplot支持。Gnuplot是一个数学绘图工具,它可以将数据和函数转换为专业的可视化图表。
    gnustep
    添加GNUstep开发环境支持 (GNUstep是一个免费/面向对象/图形化/跨平台的开发环境)
    gnutls
    添加net-libs/gnutls支持(GnuTLS是一款提供TLS 1.0 和 SSL 3.0 加密支持的库)
    gphoto2
    添加数码相机支持
    gpm
    添加sys-libs/gpm支持 (GPM是通用鼠标协议,为控制台下提供鼠标支持,提供了通用的剪切和粘贴支持)
    gps
    添加全球定位系统(GPS)支持
    graphviz
    添加Graphviz库支持。Graphviz是一个绘图工具集,通过绘制直观的图表,往往能够清晰地表现各种结构之间的关系,从而使复杂的问题简单化。
    gzip
    添加gzip压缩支持
    gsl
    使用GSL科学计算函数库进行计算。GNU科学计算函数库GSL(GNU Scientific Library)是一个强大的C/C++数值计算函数库。
    gsm
    支持GSM有损语音压缩编码/解码器。GSM俗称”全球通”,是一种起源于欧洲的第二代移动通信技术标准。
    gstreamer
    添加media-libs/gstreamer支持 (GStreamer是GNOME下构建流媒体应用的编程框架,目标是简化音/视频应用程序的开发)
    gtk
    添加x11-libs/gtk+支持 (GTK: GIMP工具包,GIMP: 通用图像处理程序)(GTK+是应用程序图形界面编程工具)
    gtkhtml
    添加gnome-extra/gtkhtml支持 (GtkHTML是一个HTML分析/编辑库)
    guile
    添加dev-util/guile支持 (Scheme语言解释程序)(Guile是GNU工程的扩展语言库,是一个Scheme语言的实现版本,把这个库链接到你的应用中就为你的应用增加了一种扩展语言)
    hal
    添加硬件抽象层(HAL)支持 (硬件抽象层完全把系统软件和硬件部分隔离开来,这样就使得系统的设备驱动程序与硬件设备无关,从而大大提高了系统的可移植性)
    handbook
    允许为KDE4生成参考手册
    hardened
    默认为工具链(gcc/glibc/binutils)启用安全增强特性
    hddtemp
    启用硬盘驱动器温度监控(app-admin/hddtemp)
    hdf5
    启用HDF5(Hierarchical Data Format v5)支持。HDF5是一个层次型的数据存储格式,包含了数据定义和支持接口,支持并行I/O。HDF5比较适合用于那些无法用一般的格式存放的复杂科学数据。目前很多遥感存储采用HDF5格式来实现。
    ibm
    添加IBM ppc64体系结构支持
    iconv
    添加iconv字符集转换函数库支持
    icq
    添加ICQ通信协议支持
    icu
    添加ICU(Internationalization Components for Unicode)支持(使用dev-libs/icu)。是一个C/C++的Unicode库,可以根据各地的习俗约定格式化数字、日期、时间和货币,以及对这些格式中的文本进行语法分析。
    idn
    添加IDN(Internationalized Domain Names,国际化域名)支持
    ieee1394
    添加IEEE1394火线支持(数码相机,数码摄像机等)
    imagemagick
    添加Imagemagick支持(ImageMagick类似于GD但效果比GD好)
    imap
    添加IMAP支持 (IMAP: 网际网络信息存取协议,是一种比POP3更好的协议,可取代POP3协议)
    imlib
    添加media-libs/imlib支持 (imlib: 一个图片加载和显示库,用于Gnome图形用户环境)
    inifile
    为.ini文件添加dbm数据库支持
    innodb
    为mySQL添加innodb表类型支持 (innoDB表类型可以支持事务处理,且性能优秀)
    interbase
    添加Interbase数据库支持
    iodbc
    添加iODBC驱动程序库支持 (ODBC: 开放数据库连接)
    ipod
    允许访问iPod设备
    ipv6
    添加IPv6支持
    jabber
    添加jabber即时通信协议支持 (jabber是一款即时消息软件)
    jack
    添加JACK音频连接工具包 (低延迟、高性能的中间过程音频连接,以及音频设备共享,适合于专业音频应用程序)
    java
    添加Java支持
    java5
    使用Java 1.5编译JAVA支持
    java6
    使用Java 1.6编译JAVA支持
    javascript
    添加javascript支持
    jbig
    为tiff,Hylafax,ImageMagick等添加jbig-kit支持。jbig-kit是一种高压缩率且不失真的影像压缩函数库,适用於传真或扫描影像。
    jingle
    允许jabber使用语音进行通信。Jabber是一种开放式架构的即时通讯系统,可以和AOL、ICQ以及YAHOO通兼容。
    joystick
    在所有软件包里添加joysticks(游戏操纵杆)支持
    jpeg
    添加JPEG图片格式支持
    jpeg2k
    添加JPEG 2000图片格式支持
    kontact
    添加KDE个人信息管理支持(kde-base/kdepim*)
    kde
    添加kde-base/kde支持 (KDE桌面环境)
    kdeenablefinal
    [试验]使用enable-final标志建立kde的ebuilds,可以加速编译,但是要占用大量内存。官方反对使用此标记。
    kdehiddenvisibility
    编译KDE时默认隐藏符号(使用GCC -fvisibility=hidden 命令行选项),必须使用GCC4.1以上版本。
    kdeprefix
    在KDE的安装目录中添加SLOT前缀(/usr/kde/$SLOT),否则将直接安装到FHS兼容的位置(/usr)
    kerberos
    添加kerberos支持(Kerberos是一个基于对称密码的认证协议,该协议能够提供强安全的认证服务)[参考文档:Kerberos认证协议]
    kolab
    添加Kolab Groupware Server支持。Kolab是提供EMAIL、日历、任务计划、通知联系等功能的集成服务程序。
    krb4
    添加可选的kerberos4兼容支持 (Kerberos 4协议实现中存在多个加密漏洞,目前为版本5)
    ladspa
    添加LADSPA(Linux Audio Developer’s Simple Plugin API)支持
    lame
    使用LAME库作为MP3编码器。LAME据说是目前最好的MP3编码器,是编码高品质MP3的最佳选择。
    lapack
    添加virtual/lapack数值计算库支持(lapack是一个用于线性代数计算的子程序包)
    lash
    添加LASH支持。LASH是一个用于Linux音频应用程序的会话管理系统,它允许你保存和恢复由多个相互关联的应用程序组成的音频会话状态。
    latex
    添加LaTeX支持。LaTeX是一种基于TeX的排版系统,即使使用者没有排版和程序设计的知识也可以充分发挥由TeX所提供的强大功能。
    lcms
    添加lcms支持。lcms库可以提供色彩管理功能。
    ldap
    添加LDAP(轻量级目录访问协议)支持。
    libcaca
    添加彩色ASCII艺术图形支持
    libedit
    使用libedit库代替Readline库。libedit是一个非GPL的与GNU Readline库兼容的替代品。
    libgda
    添加GDA(GNOME Data Access)支持。GDA提供了一种访问多种不同类型的数据源的统一架构,既包括传统的关系型数据库也包括任何可以想象的邮件服务器数据以及LDAP数据等。
    libnotify
    添加桌面通知机制(desktop notification)支持。
    libsamplerate
    添加libsamplerate支持。libsamplerate(Secret Rabbit Code)是一个音频重采样库,比如将44.1kHz的CD音频转换为48kHz的DVD音频。
    libwww
    添加libwww库(通用WEB应用程序编程接口)支持
    lirc
    添加lirc支持 (lirc: Linux红外端口控制工具)
    livecd
    !!仅供内部使用,请不要设置此参数!! 在livecd构建中使用
    lm_sensors
    添加lm_sensors支持 (硬件监测软件,提供电压,温度,风扇转速等的实时监测)
    lua
    添加Lua脚本支持。Lua是一种小型的脚本语言,设计目的是为了嵌入其他应用程序中,从而为应用程序提供灵活的扩展和定制功能。
    lzo
    添加lzo压缩支持。lzo的压缩率并不高,但它是最快速的压缩和解压的算法,主要用于实时性较高的场合。
    m17n-lib
    添加m17n-lib支持 (“m17n”是”多语言化”的缩写。m17n-lib是一个C语言的多语言文本处理库,可让应用程序实现多语言支持)
    mad
    添加mad(一个高质量的mp3解码库/命令行前端)支持
    maildir
    添加maildir风格(~/.maildir)的邮件缓冲池支持
    mailwrapper
    添加mailwrapper支持,允许使用其他的MTA(如postfix)取代sendmail
    matroska
    添加matroska多媒体容器格式(.mkv .mka .mks)支持。Matroska是一种新的多媒体封装格式,它可将多种不同编码的视频及16条以上不同格式的音频和不同语言的字幕流封装到同一个文件当中。
    matrox
    添加Matrox MGA系列显卡支持
    mbox
    添加mbox风格(/var/spool/mail)的邮件缓冲池支持
    mcve
    添加MCVE信用卡支付系统支持
    memlimit
    对于支持内存限制的程序启用内存限制支持
    mhash
    添加mhash库支持。mhash是一种线程安全的哈希算法库。
    migemo
    为日语添加migemo支持
    mikmod
    添加libmikmod支持来播放音轨格式的音频文件
    milter
    为sendmail添加milter邮件过滤器支持
    mime
    添加MIME支持。MIME是描述消息内容类型的因特网标准,MIME消息能包含文本、图像、音频、视频以及其他应用程序专用的数据。
    minimal
    安装一个最小化的build(比如禁止插件/字体/大多数驱动程序/非关键的特性)
    mmap
    添加mmap(自内存映射)支持[参考文档:内存映射mmap]
    mmx
    为Pentium MMX和Athlon等级的处理器添加最佳化优化支持
    mng
    添加libmng库以支持MNG格式的图片
    modplug
    添加libmodplug支持。Libmodplug是一款用于mod类音乐格式(.mod .s3m .it .xm 等后缀)播放和转换的函数库。
    mono
    添加Mono支持。Mono是一个Linux上的.NET平台。
    motif
    添加motif工具集支持。[参考文档:GNOME与KDE的战争]
    mozilla
    添加Mozilla web浏览器支持
    mp3
    添加读取mp3文件支持
    mp4
    添加读取mp4文件支持。mp4并不是一种编码格式,它实际上只是一种容器
    mpeg
    添加libmpeg3库支持(libmpeg3是一个处理mpeg编码的库)
    mpi
    添加MPI(Message Passing Interface)支持 (MPI: 消息传递接口,是一套可用于Linux高性能计算集群系统上的数据传送模型,目标是创建一套和程序语言、计算机种类无关的标准,用以撰写收送讯息的程序码)
    mplayer
    添加mplayer播放/编码支持
    msn
    添加MSN Messenger通信协议支持
    msql
    添加MSQL数据库支持
    mssql
    添加Microsoft SQL Server数据库支持
    mtp
    添加MTP(Media Transfer Protocol,媒体传输协议)支持。[参考文档:媒体传输协议]
    mule
    为XEmacs添加多语言支持
    multilib
    让64bit系统可以同时编译32bit和64bit二进制文件
    musepack
    添加musepack音频编码支持。musepack据说是比Lame MP3更优秀的有损压缩方案,是目前最适合用于音乐欣赏的有损编码。
    musicbrainz
    使用MusicBrainz(musicbrainz.org)社区服务查找音频文件的元数据
    mysql
    添加MySQL数据库支持
    mysqli
    添加mySQLi库支持(改进版本的MySQL库,用于MySQL4.1以上版本)
    nas
    添加网络音频(network audio)支持
    ncurses
    添加ncurses支持添加ncurses控制台显示库支持 (ncurses是curses的改良版本,是一个能提供快捷键、彩色界面、提供鼠标支持的基于文本终端窗口功能的动态库)
    neXt
    添加neXt工具集支持(??什么玩意??与NeXT软件公司推出的NEXTSTEP操作系统有关吗??)
    netboot
    添加网络启动支持
    netcdf
    启用NetCDF数据格式支持 (NetCDF是大气研究大学协会(UCAR)开发的。由于NetCDF是一种灵活的,自描述的,并能表达大量数组数据的格式,因此NetCDF在地球、海洋、大气科学中得到了广泛的应用)
    networkmanager
    添加net-misc/networkmanager支持
    nis
    启用NIS/YP服务支持 (NIS/YP: 网络信息服务)
    nls
    使用GNU gettext启用本地化语言支持 (GNU gettext是一个本地化/国际化函数库)
    nntp
    添加网络新闻传输协议NNTP(Network News Transfer Protocol)支持。NNTP是一种服务器-客户机流模式(端口119)实现新闻文章的发行、查询、修复及记录等过程的协议。新闻文章只需要存储在一台服务器主机上,而位于其它网络主机上的订户通过建立到新闻主机的流连接阅读到新闻文章。NNTP为新闻组的广泛应用建立了技术基础。
    nocd
    安装在没有CD-ROM的情况下运行程序所需要的所有文件
    nocxx
    禁止C++支持(除非你自己知道自己在作什么,否则不要启用该选项)
    nptl
    添加Native POSIX Thread库支持 (Linux2.6以上的内核POSIX线程的新实现,大大提高了性能并增加了可缩放性)[参考文档:Linux线程库性能测试与分析;应用2.6内核超线程模式]
    nsplugin
    为支持Netscape插件架构的浏览器编译插件,目前几乎所有浏览器都支持。
    ocaml
    添加Ocaml语言支持。Ocaml是Caml编程语言的主要实现。
    ocamlopt
    添加ocamlopt(ocaml本机代码编译器)支持。目的是生成运行速度更快的程序(警告:你必须在全局范围内明确的disable/enable它)
    oci8
    添加Oracle8支持
    oci8-instant-client
    使用dev-db/oracle-instantclient-basic作为Oracle服务提供者,而不是安装完整的Oracle服务器。
    odbc
    添加ODBC(开放数据库互连)支持
    offensive
    ??使用程序包中可能存在的攻击的(讨厌的)项目??
    ofx
    添加OFX(开放式金融交换)数据文件的导入/导出支持
    ogg
    添加Ogg多媒体容器格式支持(通常被Vorbis/Theora/flac使用)
    old-linux
    添加老版本的linux-2.4支持
    openal
    添加OpenAL(Open Audio Library)支持。OpenAL是跨平台音效API,用于多通道三维位置音效的特效表现,其API风格模仿自OpenGL,也主要用于游戏。
    openexr
    添加高动态范围/高精度色彩的OpenEXR图形文件格式支持[http://www.openexr.com/]。OpenEXR主要用于全球第一大特效制作公司ILM的电影(变形金刚,侏罗纪公园,加勒比海盗,星球大战…)中。
    opengl
    添加OpenGL(3D图形API)支持。
    openmp
    添加OpenMP支持。OpenMP是一个编译器指令和库函数的集合,主要是为共享式存储计算机上的并行程序设计使用的。要求 >=sys-devel/gcc-4.2 并且使用USE=”openmp”编译。
    oracle
    添加oracle数据库支持
    osc
    添加OSC(Open Sound Control)协议支持。OSC协议可以用于计算机、声音合成器、各种多媒体设备之间通过网络进行通信,让电子乐器之间也能利用网络的便利。
    oscar
    添加Oscar(AIM/ICQ)即时通信协议支持
    oss
    添加OSS支持(Open Sound System起源于Linux kernel的声卡驱动程序,已是昨日黄花,目前让位给ALSA了)
    pam
    添加PAM支持。切勿武断的使用它!(PAM: 可插入认证模块,是功能十分强大的系统认证模组系统,所有新式的Linux系统皆使用此认证系统,系统可藉由PAM,扩充认证机制)
    pch
    启用预编译头文件支持(要求 >=sys-devel/gcc-3.4),这将增大内存和磁盘用量,但可以加快编译过程。
    pcmcia
    添加笔记本上的PCMCIA设备支持
    pcntl
    Adds support for process creation functions
    pcre
    添加PCRE(Perl兼容的正则表达式)支持
    pda
    添加便携式设备支持(PDA??)
    pdf
    添加PDF文档格式支持
    perl
    添加Perl语言支持
    php
    添加php支持
    plasma
    编译可选的plasma widgets支持(依赖于kde-base/libplasma)
    plotutils
    添加plotutils支持。plotutils是一个2D矢量图函数库。
    png
    添加libpng库支持(PNG图片)
    policykit
    使用sys-auth/policykit获取特权
    portaudio
    添加跨平台的portaudio音频编程接口支持
    posix
    添加POSIX兼容函数库支持
    postgres
    添加PostgreSQL数据库支持
    ppds
    自动生成打印驱动程序文件
    prelude
    启用Prelude入侵检测系统支持
    prefix
    Defines if a Gentoo Prefix offset installation is used
    profile
    在编译时添加profile支持,主要用于应用程序性能分析和调试。
    pulseaudio
    添加PulseAudio音频服务支持。[参考文档:Linux声音系统和PulseAudio简介]
    python
    添加Python语言支持
    qdbm
    添加qdbm(Quick Database Manager)库支持(QDBM是一个管理数据库的函数库,它参照GDBM为了下述三点而被开发:更高的处理速度,更小的数据库文件大小,和更简单的API)
    qmail-spp
    添加qmail SMTP插件支持
    qt3
    添加Qt GUI/Application Toolkit 3.x支持(Qt 3.x是一个多平台的C++图形用户界面应用程序框架,也是KDE 3.x桌面环境的基础)
    qt4
    添加Qt GUI/Application Toolkit 4.x支持(Qt 4.x是一个多平台的C++图形用户界面应用程序框架,也是KDE 4.x桌面环境的基础)
    quicktime
    添加OpenQuickTime支持
    radius
    添加RADIUS认证支持(主要用于对远程拨入的用户进行授权和认证,主要针对的远程登录类型有:LDAP、SLIP、PAP、PPP、telnet和rlogin等)
    raw
    添加raw image格式支持
    rdesktop
    添加远程桌面协议支持,主要用于连接到Windows服务器。
    readline
    使用libreadline库支持 (readline是一个对命令行进行编辑的库,使用命令行的的人一般都需要, 除非你不使用Esc/Alt/Ctrl/Shift键,否则请加上这个参数)
    recode
    添加GNU recode库支持 (GNU recode库可以在不同的字符集和编码间相互转换)
    rss
    添加RSS feeds支持
    ruby
    添加Ruby语言支持
    samba
    添加SAMBA支持,可以实现与Windows文件共享以及打印共享
    sapdb
    添加SAP DB数据库支持(也就是MySQL公司的MaxDB)
    sasl
    添加SASL支持 (SASL: 简单认证和安全层)[参考文档:基于cyrus-sasl的认证]
    savedconfig
    使用它来恢复保存在/etc/portage/savedconfig ${CATEGORY}/${PN}中的配置信息。你必须确保USE标记包含了正确的依赖关系。
    scanner
    添加硬件扫描支持(比如做为kdegraphics程序的前端)
    sdl
    添加Simple Direct Layer支持 (多媒体库)
    seamonkey
    添加Seamonkey浏览器支持
    selinux
    提供SELinux支持 !!仅功内部使用,只能由selinux的profile文件设置,其他情况下请勿使用!![参考文档:Linux安全模块简介;SELinux是什么]
    semantic-desktop
    跨KDE支持语义搜索和信息检索
    session
    添加持久会话支持(??啥意思??)
    sharedext
    为php添加创建共享扩展的支持
    sharedmem
    添加使用共享内存段支持
    shorten
    添加shorten音频压缩器支持
    simplexml
    添加SimpleXML支持(SimpleXML是一个处理XML的扩展模块,基于GNOME项目的libxml2库)
    skey
    启用S/Key认证支持。S/Key是种一次性密码系统。
    slang
    添加slang文本显示库支持 (很像ncurses)
    slp
    添加服务定位协议(Service Locator Protocol)支持
    smartcard
    添加智能卡支持
    smp
    启用多核CPU以及多CPU支持
    sndfile
    添加libsndfile支持 (libsndfile是一个通过标准接口来读写声音文件的C库)
    snmp
    添加SNMP协议支持 (SNMP: 简单网络管理协议)
    soap
    添加SOAP协议支持 (SOAP: 简单对象访问协议)
    sockets
    添加tcp/ip套接字支持
    socks5
    添加socks5袋裡服务器支持
    solid
    添加Solid数据库引擎支持
    source
    将源代码打成zip包并安装??
    sox
    添加音频格式转换软件SoX(Sound eXchange)支持
    speex
    添加speex音频编码支持。Speex的特点是针对语音压缩的效果非常好,音质不次于iLBC,在丢包和窄带(5-30k)时音质依然非常出色。
    spell
    添加拼写检查/字典支持
    spl
    添加PHP标准程序库(Standard PHP Library)支持
    sqlite
    添加SQLite数据库支持 (一个轻量级数据库)
    sqlite3
    添加SQLite3数据库支持 (一个轻量级数据库)
    sse
    为PentiumIII级别以上的cpu启用SSE指令集优化支持
    sse2
    为兼容SSE2指令集的CPU启用SSE2指令集优化支持
    ssl
    添加SSL连接支持 (SSL: 安全套接字层)
    startup-notification
    开启应用程序启动事件反馈机制
    static
    !!在系统引导过程中切勿使用该参数!! 因为这将导致二进制可执行文件使用静态连接而不是动态连接
    subversion
    开启subversion(一种版本控制系统)支持
    suid
    允许具有潜在安全风险的程序具有setuid位
    svg
    添加SVG支持 (SVG: 可缩放矢量图,那些经常浏览多媒体网站的用户可能需要)
    svga
    添加SVGAlib库支持。SvgaLib是Linux Console下的VGA驱动函数库。
    sybase
    添加Sybase数据库支持
    sybase-ct
    添加Sybase-CT数据库支持
    symlink
    强制内核ebuilds自动更新/usr/src/linux符号连接
    syslog
    添加syslog支持
    sysvipc
    添加与System V兼容的进程间通信支持
    szip
    使用szip压缩库。Szip是一种无损压缩,对大文本压缩效果较好。
    taglib
    使用taglib来扩展JSP标记。
    tcl
    添加Tcl/Tk支持(Tcl/Tk 是一种简明、高效、可移植性好的编程语言)
    tcpd
    添加TCP包装支持
    test
    Portage-2.1.2之后此标记已经失去意义了,不要使用它。
    theora
    添加开源免费的Theora视频编码支持。Theora属于Ogg项目的一部分,主要用于高清影片,具有超越H.264的画质,下一代的Theora编码器将命名为Thusnelda
    threads
    在内核中添加线程库支持,通常是pthreads(Posix线程库)[参考文档:Linux线程库性能测试与分析;应用2.6内核超线程模式;Linux线程初探]
    tidy
    添加HTML Tidy支持 (Tidy: 一个将HTML转换为XHTML的开源工具)
    tiff
    添加tiff图片格式支持
    timidity
    添加Timidity++(MIDI音序器)支持
    tk
    添加Tk GUI toolkit支持
    tokenizer
    添加PHP文件分析器(file parser)支持
    truetype
    添加FreeType/FreeType2字体支持
    uclibc
    使用uclibc进行编译和连接 (uClibc是一个针对嵌入式系统替代Glibc的C库,需要的内存比Glibc少)
    unicode
    添加Unicode支持
    usb
    添加USB支持
    v4l
    添加video4linux支持 (内核视频采集接口API)
    v4l2
    添加video4linux2支持 (新一代内核视频采集接口API)
    vanilla
    不添加改变默认行为的额外补丁。!!切勿在全局范围内使用此标记!!
    vcd
    添加VCD支持
    vhosts
    添加为虚拟主机环境安装基于Web的应用程序的支持??
    videos
    安装一些游戏中可选的视频文件
    vim-syntax
    加入相关的vim语法脚本
    vnc
    添加VNC(remote desktop viewer)支持。VNC是一类使用RFB协议的跨平台屏幕分享及远程控制软件,比如:RealVNC, TightVNC, UltraVNC 等。
    voodoo3
    添加3Dfx的Voodoo3支持,不然将默认支持Voodoo4/5
    vorbis
    添加OggVorbis音频解码器支持。[参考文档:OggVorbis]
    wavpack
    添加wavpack音频压缩工具支持。[参考文档:WavPack]
    wddx
    添加WDDX支持 (WDDX是一种基于XML的Web分布式数据交换技术)
    wifi
    添加无线网络支持
    win32codecs
    使用win32编码器动态链接库来支持avi/wmv等文件的解码
    wmf
    添加wmf矢量图形格式支持。
    wxwidgets
    添加wxWidgets/wxGTK图形用户界面开发工具支持
    wxwindows
    反对使用此标记,即将被废除
    x264
    使用x264来支持h.264编码。h.264是一种高清视频编码标准,而x264是采用这种标准的一种具体实现。
    xattr
    添加文件系统的扩展属性支持(存储在文件系统内的元数据)。[参考文档:扩展文件属性]
    xcb
    添加XCB(X protocol C-language Binding)支持。XCB是Xlib的一个替代品,具有精简、延迟隐藏(latency hiding)、直接访问协议、可扩展性、可支持多线程执行的优点。
    xcomposite
    添加Xorg的复合扩展(composite extension)支持。
    xemacs
    添加XEmacs支持
    xface
    添加xface支持 (通过在Email加入X-Face信头来显示一个小头像)
    xft
    编译XFT字体渲染引擎(x11-libs/libXft)支持。XFT给X应用程序提供了访问FreeType字体光栅化引擎和X渲染扩展的接口,也担负了配置和定制字体的功能。
    xine
    添加XINE电影播放库支持 (XINE是一个可播放众多流媒体文件的函数库和播放器)
    xinerama
    添加xinerama X11扩展支持,以支持多个显示器
    xinetd
    添加xinetd(超级Internet服务器)支持。[参考文档:网络服务和Xinetd]
    xml
    添加XML文件支持
    xmlrpc
    添加xml-rpc库支持
    xosd
    使用X On Screen Display库发送显示信号??
    xpm
    添加XPM图形格式支持
    xprint
    添加xprint支持,Xprint是一种高级打印系统。
    xscreensaver
    添加XScreenSaver扩展支持。XScreenSaver是一个执行在X Window系统下的屏幕保护程序,还能锁定屏幕。
    xsl
    添加XSL库(v1)支持(XSL文档也是XML文档中一种)
    xulrunner
    使用xulrunner(而不是firefox/seamonkey)来编译本地浏览器集成。
    xv
    添加可选的Xvideo扩展支持 (Xvideo是一个X窗口下的视频回放API,可以直接把图像显示在可拖拉的对象里)
    xvid
    添加xvid.org的开源mpeg-4编码支持
    yahoo
    添加Yahoo Messenger即时通信协议支持
    yaz
    添加用于Z39.50协议支持(YAZ)。Z39.50协议是一种在客户/服务器环境下计算机之间进行信息检索的通讯协议。
    zeroconf
    添加DNS-SD(DNS Service Discovery)支持。DNS-SD是一个浏览网络上的DNS服务的方法。
    zlib
    添加zlib(解)压缩支持
    zsh-completion
    添加zsh-completion支持(改进了zsh的自动补全功能)

  • 相关阅读:
    栅栏与自由
    如何种玉米和黄豆
    除了CRUD也要注意IO
    奶糖测试
    看你知道不知道VB6的模块之间循环关系
    [zz]C++类模板
    [zz]C++中std::tr1::function和bind 组件的使用
    [zz]c/c++一些库
    [zz] Python性能鸡汤
    [zz]Linux 下 socket 编程示例
  • 原文地址:https://www.cnblogs.com/gandefeng/p/6831601.html
Copyright © 2020-2023  润新知