LinuxSir.cn,穿越时空的Linuxsir!

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

gentoo新手指南:USE标签设置简易入门

[复制链接]
发表于 2006-10-7 20:01:57 | 显示全部楼层 |阅读模式
USE大概是gentoo配合从源代码编译软件的一个非常有用的功能,我的理解是:USE是系统编译软件的功能模块参考,是软件或者功能的关键字。你可以通过USE设置让gentoo知道你需要什么功能,不需要什么功能,这样系统帮你编译出的软件就是最符合你的要求的,同时避免编译你不需要的功能模块进你的软件,也可以让你的系统代码更干净,运行更高效。

另外一种理解是:不同用途的机器有不同的需求,Gentoo为了使构造出的系统最满足自己的需求,于是有了USE。

或许还比较难理解,举个简单的例子:mplayer是大家比较常用的媒体播放软件,这个软件在gentoo里面可以指定各种功能模块比如alsa dvd real等,如果你不需要real的支持,你可以不用这个use标签,那系统在编译安装这个软件的时候就会去掉相关的功能支持。

规划设置好自己的USE是非常重要的,它不仅影响到编译的效率,还直接影响到系统的运行状态。过多过复杂的USE设置不仅使系统臃肿、烦琐,还可能造成很多莫名其妙的编译失败。而太过精简的USE设置又可能给将来的应用带来麻烦:很多已经安装好的软件需要rebuild才能支持自己需要的功能


一般系统编译软件的时候,会使用软件缺省的设置,配合你机器上的make.conf里的设置来决定使用什么USE参数进行编译。make.conf中的 use设置是你对整个系统内功能模块的一些定义,你可以增加或者删除这些功能模块(不想使用一个功能模块,除了删除这个USE,还可以在前面加上一个减号,比如-ipv6)

当然,就象你了解的那样,make.conf是针对整个系统设置的,安装任何软件都会读取其中的use设置。如果你想某个软件的use设置和系统的整个设置不一样,又不能把make.conf改来改去,可以有两种方法:

1、在特定描述文件中(/etc/portage/package.use)单独指定某个软件的use,比如在文件中增加:
  1. dev-db/mysql berkdb #前面是和portage树一样结构的软件名称,后面是指定它的use设置;
复制代码


2、emerge的时候用环境变量的方式直接指定use参数,比如:
  1. # USE="-java" emerge mozilla #关闭mozilla中的java use标签;
复制代码


当然,为了避免混乱,这些use的使用是有优先级别之分的,各优先级别从低到高分别为:
  1. make.defaults(系统自动设置,不可更改) -> use.defaults(软件自动use参数) -> /etc/make.conf(对整个系统指定,可自己修改) -> /etc/portage/package.use(自己指定某个软件的use,独立于make.conf中的全局设置) -> 环境变量指定的use设置
复制代码



那么一般我们编译软件的时候,有哪些可用参数呢?

1、用emerge查询:
  1. #emerge --pretend --verbose XXX
复制代码


2、用gentoolkit的equery查询:
  1. # equery uses XXX
复制代码


有时候我们因为某种原因增加了一个use,为了使系统中所有支持这个use的软件都开启这项功能,我们可以用如下命令:
  1. #emerge --update --deep --newuse world
复制代码

这样你系统内以前安装的软件就可以增加到新增加的use设置的功能了(比如你关闭了ipv6标签,要使所有已安装的支持ipv6功能的软件都去掉这项功能,就可以用这个命令应用设置)。但要注意的是这个命令可能会让很多相关软件rebuild,耗费时间可能会很长。

至于系统内所有可用的use标签的作用,找到一个中文的参考,有兴趣认真读一下:

  1.    apache2 - 当一个程序包同时支持Apache1和Apache2时,选择支持Apache2
  2.   *apm - 添加APM电源管理支持[参考文档:高级电源管理常见问题解答]
  3.   *arts - 添加aRts支持 (一种KDE的音效合成器)
  4.   audiofile - 添加libaudiofile(音频文件库)支持
  5.   *avi - 添加avifile(avi库)支持 (avi是一种windows上常用的多媒体文件格式)
  6.   bash-completion - 添加bash-completiton支持 (改进了bash的命令补全功能)
  7.   bcmath - 添加libbcmath支持 (bcmath是一个任意精度数学函数库,可用于PHP)
  8.   *berkdb - 添加sys-libs/db支持 (MySQL的Berkeley DB表类型支持)
  9.   bidi - 添加双向语言支持 (支持由右而左的语言,如:阿拉伯语和希伯来语)
  10.   bindist - 启用或禁止可选的预编译包(GRP)支持 (比如由于发行许可导致的)
  11.   birdstep - 添加Birdstep数据库支持
  12.   *bitmap-fonts - 添加位图字体支持(注:该指令存在于make.defaults中,却在use.desc中找不到)

  13.   blas - 添加virtual/blas库支持 (BLAS是著名的基本线性代数子程序包,被许多实际应用问题和几乎所有有 关矩阵计算的软件所采用,可应用于科学和工程设计的矩阵计算问题,也可应用于生产基本线性代数计算的 高水平程序库,是数学应用软件的基本核心库。)

  14.   bluetooth - 添加蓝牙支持
  15.   bmp - (测试性)添加beep media player支持,主要用于在XMMS播放器中支持bmp插件,也用于支持纯beep media player
  16.   bonobo - 添加gnome-base/bonobo支持 (Gnome的CORBA接口)(CORBA:公用对象请求代理体系结构,是面向对象编程中进程间通信的一个实现。)(Bonobo是用于GNOME桌面应用程序间通信的基于CORBA的解决方案,它还依赖于GObject,不能用于GNOME 之外)

  17.   bootstrap - !!仅供内部使用,请不要设置此参数!!在原始系统的引导过程中使用
  18.   boundschecking - 添加Haj Ten Brugge边界检查补丁,这将禁用固有的PIE+SSP补丁 (边界检查用于防止缓冲区溢出漏洞攻击)
  19.   build - !!仅供内部使用,请不要设置此参数!! 用于建立引导过程前半部分的镜像构建
  20.   bzip2 - 使用bzlib压缩库
  21.   calendar - 添加日历支持(不是用mcal!)
  22.   canna - 添加Canna支持 (Canna是一个将日文假名转换到日文汉字的转换引擎)
  23.   caps - 使用Linux capabilities库(POSIX.1e capabilities)来控制权限[参考文档:Linux安全模块简介;利用  capability特征加强Linux系统安全]
  24.   cdb - 添加qmail作者编写的CDB数据库引擎
  25.   cdparanoia - 添加cdparanoia支持 (CDParanoia是一个音频格式转换软件,它可以直接从CD光盘上读取数  据,并转换成其它格式)
  26.   cdr - 添加CD刻录硬件支持
  27.   chasen - 添加chasen支持 (一个日语分词标注系统)
  28.   cjk - 添加多字节字符语言支持 (中日韩)
  29.   cpdflib - 添加clibpdf支持 (用PHP操作PDF的库)
  30.   *crypt - 添加加密支持 (使用基于私钥的mcrypt或基于公钥的gpg)
  31.   cscope - 添加cscope接口支持 (比如用于vim和emacs)(cscope具有开发支持功能,极大地方便了对源代码库的浏览和查询,vim中内置的ctags支持提供了类似的功能,但cscope的功能更为强大)
  32.   ctype - 启用ctype函数支持 (ANSI C标准库中的字符类型头文件)
  33.   *cups - 添加CUPS支持 (CUPS: 通用UNIX打印系统)
  34.   curl - 添加客户端URL传输库支持 (curl是一个可以使用URL语法传输文件的库,支持 HTTP/HTTPS/FTP/FTPS/DICT/TELNET/LDAP/FILE和GOPHER等协议)
  35.   curlwrappers - 在传输流中使用curl包装
  36.   db2 - 添加IBM DB2数据库支持
  37.   dba - 启用dbm数据库兼容层
  38.   dbase - 添加dbase文件格式(Dbase数据库文件.DBF的文件格式)支持
  39.   dbm - 添加DBM数据库支持 (DBM是柏克莱大学发展的文件/文本型数据库)
  40.   dbmaker - 添加dbmaker数据库支持
  41.   dbus - 为需要dbus的程序添加支持 (gpsd,gnomemeeting ...)(dbus是一个消息总线系统,用于在应用程序中发送消息,多用于桌面环境)[主页:http: //www.freedesktop.org/Software/dbus]

  42.   dbx - 添加数据库抽象层支持 (目的是提供给用户一种访问数据库的通用方式)
  43.   debug - 让configure和makefiles使用调试模式编译。
  44.   dedicated - 添加专属游戏服务器支持(一些程序包并不同时支持服务端和客户端)
  45.   dga - 添加Xfree86下的DGA支持 (DGA: 直接图形存取)
  46.   diet - 使用dietlibc进行编译和连接 (Dietlibc是一个可替代Glibc的C库,需要的内存比Glibc少许多,但是不完全兼容Glibc)[参考文档:轻量级 Linux-第 1 部分]
  47.   dio - 添加直接I/O支持 [参考文档:直接IO与高速缓存IO]

  48.   directfb - 添加DirectFB层支持 (DirectFB是一个库,提供了硬件图形加速/输入设备处理和抽象/一个集成的窗口系统,支持在Linux帧缓冲设备上的半透明的窗口和多显示层技术。它是一个完整的硬件抽象层,提供了对于每个图形操作的软件反馈,而这一功能还没有被底层硬件支持。)
  49.   divx4linux - 添加divx.com的DivX mpeg4库支持
  50.   doc - 添加额外的文档资料(API/Java文档等)
  51.   dv - 添加一种被许多摄象机使用的编解码器支持
  52.   dvb - 添加DVB支持 (DVB: 数字视频广播)
  53.   dvd - 添加DVD支持
  54.   dvdr - 添加DVD刻录硬件支持 (比如:xcdroast)
  55.   dvdread - 启用Ogle播放器的libdvdread库来支持DVD回放
  56.   *eds - 添加Evolution-Data-Server(eds)数据库支持
  57.   emacs - 添加GNU Emacs支持
  58.   emacs-w3 - 添加Emacs/W3支持 (文本模式的浏览器,运行于Emacs上。仅在Xemacs中才能看到图像)
  59.   #embedded - 保留的用于嵌入式环境的参数
  60.   *emboss - 添加EMBOSS支持 (EMBOSS:欧洲分子生物学开放软件包,能很好的处理分子生物学研究中的各种问题)
  61.   empress - 添加Empress数据库支持
  62.   empress-bcs - 添加Empress数据库本地存取支持
  63.   emul-linux-x86 - (在AMD64bit环境下(或许也可以是IA64bit ??))为32bit x86应用程序提供二进制支持库
  64.   *encode - 添加MEncoder(视频)和LaME(音频)多媒体编码器支持
  65.   esd - 添加media-sound/esound(ESD)支持 (一种KDE的音效合成器)
  66.   esoob - 添加Easysoft OOD数据库支持
  67.   ethereal - 在kismet中添加ethereal的wiretap库日志支持 (Kismet是一款无线网络嗅探器和数据包过滤工具,Ethereal是一款网络嗅探器)
  68.   ev6 - 假定Alpha处理器使用EV6或更好的总线架构
  69.   evo - 添加Evolution到Gnumeric和multisync中 (Evolution类似微软的Outlook,Gnumeric是一款电子表格软件,multisync是OpenSync的前身,是什么呢??)
  70.   examples - 安装示例源代码
  71.   exif - 添加读取JPEG和TIFF图片EXIF头信息的支持 (EXIF: 可交换图像文件,实际是一种JPEG文件,是专门为数码相机的照片设定的,可以记录数字照片的属性信息和拍摄数据)
  72.   expat - 允许使用dev-libs/expat (EXPAT是一个XML解析器,可用于PHP,Perl,Python等)
  73.   fam - 添加FAM支持 (FAM: 文件变更监视模块,能实时地观察文件系统的变化情况,并做出及时的适当的反应)[参考文档:Linux下的实时数据镜像]
  74.   fastcgi - 添加FastCGI接口 (CGI: 公共网关接口)
  75.   fbcon - 在内核中为控制台添加framebuffer支持 (FrameBuffer: 帧缓冲,是把显存抽象后的一种设备,可以通过这个设备的读写直接对显存进行操作)
  76.   fdftk - 添加Adobe的FDF工具包
  77.   ffmpeg - 添加ffmpeg支持 (FFmpeg是一个多媒体解码器)
  78.   fftw - 使用FFTW库进行傅立叶变换计算 (FFTW: 西部最快速傅立叶变换,用于一维和多维实数或复数的离散傅里叶变换,有些多媒体音效需要fftw)
  79.   filepro - 添加filePro数据库支持
  80.   firebird - 添加Firebird数据库支持
  81.   flac - 添加flac音频编码器支持 (FLAC是一个类似APE的无损编码方案,但容错性能要优于APE)
  82.   flash - 添加PHP的Ming库支持 (PHP的Ming库可以动态创建Flash动画)
  83.   flatfile - 为平面文件(flat file)添加dbm支持[参考文档:平面文件]
  84.   *foomaticdb - 添加foomatic打印驱动程序数据库 (foomatic把PPD和打印管理程序的配置屏蔽掉,通过同一种方式管理所有的打印机,给用户一个统一的界面)
  85.   *fortran - 添加fortran支持
  86.   freetds - 添加使用TDS协议连接MSSQL/Sybase的支持
  87.   freewnn - 添加FreeWnn支持 (FreeWnn是一个将日文假名转换到日文汉字的转换引擎)
  88.   frontbase - 添加frontbase数据库支持
  89.   ftp - 添加FTP支持
  90.   gb - 为Gnumeric添加Gnome Basic支持 (Gnumeric是GNOME下的电子制表软件,GNOME Basic是一个兼容 Visual Basic的开发工具)
  91.   gcj - 添加GCJ支持 (GCJ是GCC中用于编译JAVA的模块)
  92.   gd - 添加media-libs/gd支持 (使用gd库产生动态图片)
  93.   gd-external - 使用外部的gd版本取代内建版本(可能有些危险)
  94.   *gdbm - 添加sys-libs/gdbm支持 (GNU database函数库)
  95.   geoip - 添加GeoIP支持 (GeoIP一个识别你Web网站访问者的所在国家的工具,可用于PHP)
  96.   ggi - 添加media-libs/libggi支持 (非X窗口的视频api/drivers)
  97.   *gif - 添加GIF图片支持
  98.   ginac - 添加sci-mathematics/ginac(符号数学)支持(GiNaC是一个C++数学计算函数库,主要用于编写科学和工程上使用的计算器)
  99.   glut - 使用GLUT库构建一个OpenGL插件
  100.   gmp - 添加dev-libs/gmp支持 (GUN MP库允许你使用任意长度的整数,可用于PHP)
  101.   *gnome - 添加GNOME支持
  102.   gnustep - 添加GNUstep开发环境支持 (GNUstep是一个免费/面向对象/图形化/跨平台的开发环境)
  103.   gnutls - 添加net-libs/gnutls支持 (GnuTLS是一款提供可靠传输层加密的库)
  104.   gphoto2 - 添加数码相机支持
  105.   *gpm - 添加sys-libs/gpm支持 (GPM是通用鼠标协议,为控制台下提供鼠标支持,提供了通用的剪切和粘贴支持)
  106.   gps - 添加全球定位系统支持
  107.   *gstreamer - 添加media-libs/gstreamer支持 (GStreamer是GNOME下构建流媒体应用的编程框架,目标是简化音/视频应用程序的开发)
  108.   *gtk - 添加x11-libs/gtk+支持 (GTK: GIMP工具包,GIMP: 通用图像处理程序)(GTK+是应用程序图形界面编程工具)
  109.   *gtk2 - 在同时支持gtk+2.0和gtk+1.2的情况下使用gtk+-2.0
  110.   gtkhtml - 添加gnome-extra/gtkhtml支持 (GtkHTML是一个HTML分析/编辑库)
  111.   guile - 添加dev-util/guile支持 (Scheme语言解释程序)(Guile是GNU工程的扩展语言库,是一个Scheme语言的实现版本,把这个库链接到你的应用中就为你的应用增加了一种扩展语言)
  112.   hal - 添加硬件抽象层(HAL)支持 (硬件抽象层完全把系统软件和硬件部分隔离开来,这样就使得系统的设备驱动程序与硬件设备无关,从而大大提高了系统的可移植性)
  113.   hardened - 为工具链(gcc/glibc/binutils)启用默认的安全增强特性
  114.   hardenedphp - 为php程序组的ebuilds添加Hardened-PHP安全补丁 (Hardened-PHP是一个安全组织,他们开发了自己的安全增强版PHP)
  115.   howl - 启用howl和DNS-SD支持 (HOWL是一个高效日志子系统??)(DNS-SD: DNS服务发现,是使用标准的DNS编程接口/服务/包格式来浏览网络服务一种方法,兼容但不依赖与Multicast DNS)
  116.   hyperwave-api - 添加Hyperwave文件存储系统支持 (Hyperwave是一个类似于数据库的信息系统,专注于存储和管理文档)
  117.   ibm - 添加IBM ppc64体系结构支持
  118.   icc - 添加Intel C++编译器支持 (不会更改$CC)
  119.   iconv - 添加iconv字符集转换函数库支持(gb2312/big5/utf-8互相转换,可用于PHP)
  120.   icq - 添加ICQ通信协议支持
  121.   ieee1394 - 添加IEEE1394支持
  122.   ifc - 使用ifc代替g77 (ifc: Intel Fortran编译器,g77: GNU Fortran 77编译器)
  123.   imagemagick - 添加Imagemagick支持(ImageMagick类似于GD但效果比GD好,可以代替PHP的GD库)
  124.   imap - 添加IMAP支持 (IMAP: 网际网络信息存取协议,可取代POP3协议)
  125.   *imlib - 添加media-libs/imlib支持 (imlib: 一个图片加载和显示库,用于Gnome图形用户环境)
  126.   informix - 添加Informix数据库支持
  127.   ingres - 添加Ingres数据库支持
  128.   inifile - 为ini文件添加dbm数据库支持
  129.   innodb - 为mySQL添加innodb表类型支持 (innoDB表类型可以支持事务处理,且性能优秀)
  130.   interbase - 添加Interbase数据库支持
  131.   iodbc - 添加iODBC库支持 (一个ODBC驱动程序库,ODBC: 开放数据库连接)
  132.   *ipv6 - 添加IPv6支持
  133.   jabber - 添加jabber通信协议支持 (一款即时消息软件)
  134.   jack - 添加JACK音频连接工具包 (低延迟、高性能的中间过程音频连接,以及音频设备共享,适合于专业 音频应用程序)
  135.   java - 添加Java支持
  136.   javascript - 添加javascript支持
  137.   jikes - 使用jikes编译JAVA源码 (Jikes是一个快速的Java编译器)
  138.   joystick - 在所有包里添加joysticks支持 (joysticks: 游戏操纵杆)
  139.   *jpeg - 添加JPEG图片支持
  140.   junit - 添加junit awareness支持 (JUnit是一个回归测试框架)
  141.   *kde - 添加kde-base/kde支持 (KDE桌面环境)
  142.   kdeenablefinal - 使用enable-final标志建立kde的ebuilds,可以加速编译,但是要占用大量内存
  143.   kdexdeltas - 使kde的ebuilds只下载每个发布版与旧版不同的部分,而不是为每个新发布版下载整个tar包
  144.   kerberos - 添加kerberos支持(Kerberos是一个基于对称密码的认证协议,该协议能够提供强安全的认证服务)[参考文档:Kerberos认证协议]
  145.   krb4 - 添加可选的kerberos4兼容支持 (Kerberos 4协议实现中存在多个加密漏洞,目前为版本5)
  146.   ladcca - 添加Linux音频开发者配置与连接API支持 (LADCCA)
  147.   lapack - 添加virtual/lapack数值计算库支持(lapack是一个用于线性代数计算的子程序包)
  148.   lcms - 为media-gfx/imagemagick添加lcms支持 (lcms库用来提供色彩管理功能)
  149.   ldap - 添加LDAP支持 (LDAP: 轻量级目录访问协议)
  150.   leim - 为Emacs添加自带的leim输入法支持(据说这个输入法不咋地)
  151.   lesstif - 当程序同时支持lesstif和openmotif时,使用lesstif。(Motif,lesstif,openmotif都是用于X的图形接口)
  152.   libcaca - 添加彩色ASCII-art图形支持
  153.   libedit - 添加libedit库支持 (一个非GPL的与GNU Readline库兼容的替代品)
  154.   *libg++ - 在dev-db/postgresql中添加C++模块支持 (libpq++是PostgreSQL的C++ API,是一个C++类的集合,允许客户端程序与PostgreSQL服务器进行联接)
  155.   libgda - 为gnumeric添加CORBA包装的GNU数据存取支持 (gnumeric是一款电子表格软件)
  156. *libwww - 添加libwww库支持 (libwww: 通用WEB应用程序编程接口)
  157.   lirc - 添加lirc支持 (lirc: 红外端口控制工具)
  158.   livecd - !!仅供内部使用,请不要设置此参数!! 在livecd构建中使用
  159.   lm_sensors - 添加lm_sensors支持 (硬件监测软件,提供电压,温度,风扇转速等的实时监测)
  160.   m17n-lib - 添加m17n-lib支持 ("m17n"是"多语言化"的缩写。m17n-lib是一个C语言的多语言文本处理库,可让应用程序实现多语言支持)
  161.   *mad - 添加mad支持 (一个高质量的mp3解码库/插件)
  162.   maildir - 添加maildir风格(~/.maildir)的邮件缓冲池支持??
  163.   mailwrapper - 添加mailwrapper支持,允许使用其他的MTA(如postfix)取代sendmail
  164.   
  165.   matroska - 添加matroska容器格式支持 (MKV是Matroska的一种媒体文件, Matroska是一种新的多媒体封装格式也称多媒体容器,它可将多种不同编码的视频及16条以上不同格式的音频和不同语言的字幕流封装到一个 Matroska Media文件当中,)

  166.   matrox - 为mplayer添加Matrox MGA支持
  167.   mbox - 添加mbox风格(/var/spool/mail)的邮件缓冲池支持??
  168.   mcal - 添加MCAL模块日历存取函数库支持 (可用于PHP4的一个模块,在PHP5中转移到PECL仓库)
  169.   mcve - 添加MCVE信用卡支付系统支持
  170.   memlimit - 对于支持内存限制的程序启用内存限制支持
  171.   mhash - 添加mhash库支持 (可用于PHP的功能强大的hash函数扩展库)
  172.   migemo - 为日语添加migemo支持
  173.   *mikmod - 添加libmikmod支持来播放音轨格式的音频文件
  174.   milter - 为sendmail添加milter邮件过滤器支持
  175.   mime - 添加MIME支持
  176.   ming - 添加ming库支持以创建flash文件
  177.   minimal - 安装一个最低限度的build (比如禁止插件/字体/大多数驱动程序/非关键的特性)
  178.   mmap - 添加mmap支持 (mmap是自内存映射)[参考文档:内存映射mmap]
  179.   mmx - 为Pentium MMX和Athlon等级的处理器添加最佳化优化支持
  180.   mng - 添加libmng库以支持MNG图片
  181.   mnogosearch - 添加mnoGoSearch搜索引擎支持 (mnoGoSearch是基于SQL的搜索引擎,可用于PHP)
  182.   mono - 添加Mono支持 (Mono是一个Linux下的.NET开发平台)
  183.   *motif - 添加motif支持 (x11-libs/openmotif x11-libs/lesstif)(Motif,lesstif,openmotif都是用于X的图形接口)
  184.   mozilla - 添加mozilla支持
  185.   *mp3 - 添加读取mp3文件支持
  186.   *mpeg - 为许多程序包添加libmpeg3库支持 (libmpeg3是一个全面的处理mpeg的库)
  187.   mpi - 为支持MPI的程序添加MPI层支持 (MPI: 消息传递接口,是一套可用于Linux高性能计算集群系统上的数据传送模型,目标是创建一套和程序语言、计算机种类无关的标准,用以撰写收送讯息的程序码)
  188.   msession - 添加msession支持 (msession是一个高效的session处理程序,可用于PHP)
  189.   msn - 添加MSN Messenger通信协议支持
  190.   msql - 添加MSQL数据库支持
  191.   mssql - 添加SQL Server数据库支持
  192.   mule - 为XEmacs添加多语言支持
  193.   multilib - 让64bit系统可以同时编译32bit和64bit二进制文件
  194.   mysql - 添加mySQL数据库支持
  195.   mysqli - 添加mySQLi库支持 (用于PHP5的改进的MySQL库,用于MySQL4.1以上版本)
  196.   nas - 添加网络音频支持
  197.   *ncurses - 添加ncurses控制台显示库支持 (ncurses是curses的改良版本,是一个能提供快捷键、彩色界面、提供鼠标支持的基于文本终端窗口功能的动态库)
  198.   netboot - 启用网络启动支持
  199.   netcdf - 启用NetCDF数据格式支持 (NetCDF是大气研究大学协会(UCAR)开发的。由于NetCDF是一种灵活的,自描述的,并能表达大量数组数据的格式,因此NetCDF在地球、海洋、大气科学中得到了广泛的应用。)
  200.   neXt - 启用neXt工具包(这是什么东西?)
  201.   nhc98 - 如果程序包支持,就用nhc98 Haskell编译器代替GHC编译器 (两者都是Haskell98语言编译器)
  202.   nis - 启用NIS/YP服务支持 (NIS/YP: 网络信息服务)
  203.   *nls - 使用GNU gettext启用本地化语言支持 (GNU gettext是一个本地化/国际化函数库,可以用于PHP)
  204.   nocd - 让emerge安装在没有CD-ROM的情况下运行程序所需要的所有文件
  205.   nocxx - 禁止C++支持 (除非你自己知道自己在作什么,否则不要启用该选项)
  206.   nptl - 添加Native POSIX Thread库支持 (Linux2.6以上的内核POSIX线程的新实现,大大提高了性能并增加了可缩放性)[参考文档:Linux线程库性能测试与分析;应用2.6内核超线程模式]
  207.   oci8 - 添加Oracle8支持
  208.   odbc - 添加ODBC支持
  209.   offensive - 使用程序包中可能存在的攻击的(讨厌的)项目??
  210.   ofx - 添加OFX(开放式金融交换)数据文件和gnucash/grisbi之间的导入/导出支持
  211.   *ogg - 添加Ogg多媒体容器格式支持 (通常被Vorbis/Theora/flac使用)
  212.   *oggvorbis - 添加OggVorbis音频编码格式支持
  213.   openal - 添加Open Audio库支持
  214.   *opengl - 添加OpenGL支持
  215.   oracle7 - 添加Oracle7支持
  216.   oracle - 添加oracle支持
  217.   osc - 添加Open Sound Control支持
  218.   oscar - 添加Oscar(AIM/ICQ)通信协议支持
  219.   *oss - 添加OSS支持 (Open Sound System起源于Linux kernel的声卡驱动程序,支持大部分的声卡,号称声卡驱动的一揽子解决方案)
  220.   ovrimos - 添加Ovrimos数据库支持
  221.   *pam - 添加PAM支持 (PAM: 可插入认证模块,是功能十分强大的系统认证模组系统,所有新式的Linux系统皆使用此认证系统,系统可藉由PAM,扩充认证机制)
  222.   pcmcia - 添加笔记本上的PCMCIA设备支持
  223.   pcntl - 添加进程产生函数/特性支持(啥意思??)
  224.   pcre - 添加Perl兼容的正则表达式支持
  225.   pda - 添加便携式设备(PDA?)支持
  226.   *pdflib - 添加PDF文件格式支持
  227.   *perl - 添加Perl语言支持
  228.   pfpro - 添加Verisign Payflow Pro函数库支持 (允许通过使用Verisign Payment服务进行支付或财务往来,可用于PHP)
  229.   php - 添加php支持
  230.   pic - 编译时建立位置无关代码(程序只使用相对寻址),如果你不知道这是什么意思,请勿使用!
  231.   plotutils - 为gnuplot添加plotutils支持 (gnuplot: 一个绘图工具,plotutils: 一个2D矢量图函数库)
  232.   *png - 添加libpng库支持 (PNG图片)
  233.   portaudio - 添加跨平台的portaudio音频编程接口支持
  234.   posix - 添加POSIX兼容函数库支持(啥意思??)
  235.   postgres - 添加PostgreSQL数据库支持
  236.   ppds - 自动生成打印驱动程序文件
  237.   prelude - 启用Prelude入侵检测系统支持
  238.   profile - 在建立程序包时候添加profile支持(很可能不同于默认的ebuild)??
  239.   *python - 添加Python语言支持
  240.   qdbm - 添加qdbm库支持 (QDBM是一个管理数据库的例程库,它参照GDBM为了下述三点而被开发:更高的处理速度,更小的数据库文件大小,和更简单的API)
  241.   *qt - 添加Qt库支持 (Qt是一个多平台的C++图形用户界面应用程序框架,Qt也是KDE桌面环境的基础)
  242.   *quicktime - 添加OpenQuickTime支持
  243.   radius - 添加RADIUS服务器支持(主要用于对远程拨入的用户进行授权和认证,主要针对的远程登录类型有:LDAP、SLIP、PAP、PPP、telnet和rlogin等)
  244.   *readline - 使用libreadline库支持 (readline是一个对命令行进行编辑的库,使用命令行的的人一般都需要, 除非你不使用Esc/Alt/Ctrl/Shift键,否则请加上这个参数)
  245.   recode - 添加GNU recode库支持 (GNU recode库可以在不同的字符集和它表面的编码间相互转换,可用于PHP)
  246.   ruby - 添加Ruby语言支持
  247.   samba - 添加SAMBA支持
  248.   sapdb - 添加SAP DB数据库支持 (也就是MySQL公司的MaxDB)
  249.   sasl - 添加SASL支持 (SASL: 简单认证和安全层)[参考文档:基于cyrus-sasl的认证]
  250.   scanner - 添加硬件扫描支持 (比如为kde图形界面构建健全的前端)
  251.   *sdl - 添加Simple Direct Layer支持 (多媒体库)
  252.   selinux - !!仅功内部使用,只能由selinux的profile文件设置,其他情况下请勿使用!! 提供SELinux支持[参  考文档:Linux安全模块简介;SELinux是什么]
  253.   session - 添加持久会话支持 (??啥意思??)
  254.   sharedext - 为php添加创建共享扩展(shared extensions)支持
  255.   sharedmem - 添加使用共享内存段支持
  256.   shorten - 添加shorten音频压缩支持
  257.   simplexml - 添加simplexml支持 (SimpleXML是php5的一个处理XML的扩展模块,基于GNOME项目的libxml2库)
  258.   skey - 启用S/Key认证支持 (??啥东西??)
  259.   slang - 添加slang文本显示库支持 (很像ncurses,但不是ncurses)
  260.   slp - 为CUPS添加服务定位协议支持
  261.   smartcard - 添加智能卡支持
  262.   sndfile - 添加libsndfile支持 (libsndfile是一个通过标准接口来读写声音文件的C库)
  263.   snmp - 添加SNMP支持 (SNMP: 简单网络管理协议)
  264.   soap - 添加SOAP支持 (SOAP: 简单对象访问协议)
  265.   sockets - 添加tcp/ip套接字支持
  266.   socks5 - 添加socks5代理服务器支持
  267.   solid - 添加Solid数据库支持
  268.   source - 将源代码打成zip包并安装??
  269.   sox - 添加音频格式转换软件SoX支持
  270.   speex - 添加speex音频编码器支持
  271.   *spell - 添加拼写检查/字典支持
  272.   spl - 添加PHP标准程序库(Standard PHP Library)支持
  273.   sqlite - 添加SQLite数据库支持 (一个轻量级数据库)
  274.   sse - 为PentiumIII级别以上的cpu启用SSE指令集优化支持
  275.   *ssl - 添加SSL连接支持 (SSL: 安全套接字层)
  276.   static - !!在系统引导过程中切勿使用该参数!! 因为这将导致二进制可执行文件使用静态连接而不是动态连接
  277.   svg - 添加SVG支持 (SVG: 可缩放矢量图,那些经常浏览多媒体网站的用户可能需要)
  278.   svga - 添加SVGA库支持
  279.   sybase - 添加Sybase数据库支持
  280.   sybase-ct - 添加Sybase-CT数据库支持
  281.   symlink - 强制内核ebuilds自动更新/usr/src/linux符号连接
  282.   sysvipc - 添加与System V兼容的进程间通信支持
  283.   szip - 使用szip压缩库
  284.   tcltk - 添加Tcl/Tk支持(Tcl/Tk 是一种简明,高效,可移植性好的编程语言。在信息产业领域具有广泛的应用。)
  285.   *tcpd - 添加TCP包装支持
  286.   test - ??使用FEATURES=maketest / FEATURES=test逐步的引入需要运行的包?? ??啥意思??
  287.   tetex - 添加teTeX支持(teTeX和LaTeX都是TeX套件,用于排版)
  288.   theora - 添加Theora视频压缩编码支持
  289.   threads - 在内核中添加线程库支持,通常是pthreads (pthreads: Posix线程库)[参考文档:Linux线程库性能测试与分析;应用2.6内核超线程模式;Linux线程初探]
  290.   tidy - 添加HTML Tidy支持 (Tidy: 一个将HTML转换为XHTML的开源工具)
  291.   tiff - 添加tiff图片支持
  292.   tokenizer - 添加PHP文件分析器支持
  293.   *truetype - 添加FreeType/FreeType2字体支持
  294.   *truetype-fonts - 添加FreeType2字体支持??(注:该指令存在于make.defaults中,却在use.desc中找不到)
  295.   *type1-fonts - 添加FreeType1字体支持??(注:该指令存在于make.defaults中,却在use.desc中找不到)
  296.   uclibc - 使用uclibc进行编译和连接 (uClibc是一个现代/稳定/高度兼容的替代Glibc的C库,是针对嵌入式系统开发的,需要的内存比Glibc少)
  297.   unicode - 添加Unicode支持
  298.   usb - 添加USB支持
  299.   v4l - 添加video4linux支持 (内核视频采集接口API)
  300.   vanilla - 不添加改变默认行为的额外补丁
  301.   vcd - 添加VCD支持
  302.   verbose - effects vary across packages(??啥意思??); 通常用于启用在编译时或者运行时的额外的输出信息
  303.   vhosts - 添加为虚拟主机环境安装基于Web的应用程序的支持??
  304.   videos - 指示portage安装可选的在一些游戏中使用的视频文件
  305.   voodoo3 - 添加3Dfx的Voodoo3支持,不然将默认支持Voodoo4/5
  306.   *vorbis - 添加OggVorbis音频解码器支持
  307.   wddx - 添加WDDX支持 (WDDX是一种基于XML的Web分布式数据交换技术,可用于PHP)
  308.   wifi - 添加无线网络支持
  309.   win32codecs - 使用win32编码器动态链接库来支持avi/wmv等文件的解码
  310.   wmf - 添加wmf矢量图形格式支持
  311.   wxwindows - 添加wxWindows/wxGTK支持 (wxWindows是一款C++跨平台图形界面工具箱。wx是一个封装层,一套接口。除了可与Windows“绑定”外,还支持Unix上的GTK+ (wxGTK)、Macintosh (wxMac) 以及 OS/2 等。)
  312.   xface - 添加xface支持 (通过在Email信头加入X-Face来显示一个小头像)
  313.   xine - 添加XINE电影播放库支持 (XINE是一个可播放众多流媒体文件的播放器)
  314.   xinerama - 添加xinerama X11扩展支持,以支持多个显示器
  315.   xml - 添加XML库支持(version 1)
  316.   *xml2 - 添加XML库支持(version 2)
  317.   xmlrpc - 添加xml-rpc库支持
  318.   *xmms - 添加XMMS多媒体播放器支持
  319.   xosd - 使用X On Screen Display库发送显示信号??
  320.   xpm - 添加XPM图形格式支持
  321.   xprint - 添加xprint支持,Xprint是一种高级打印系统
  322.   xsl - 添加XSL库支持 (version 1)(XSL文档也是XML文档中一种)
  323.   *xv - 添加可选的Xvideo扩展支持 (Xvideo是一个X窗口下的视频回放API,可以直接把图像显示在可拖拉的对象里)
  324.   xvid - 添加xvid.org的开源mpeg-4编码支持
  325.   yahoo - 添加Yahoo Messenger通信协议支持
  326.   yaz - 添加可选的用于信息检索的Z39.50协议支持 (YAZ)
  327.   zeo - 添加Zope企业版对象支持 (Zope是一个Web应用服务器,用来发布动态的web站点,Zope是用Python写的)
  328.   *zlib - 添加zlib(解)压缩支持

  329.   [b]# 以下参数不能由用户设置或取消[/b]
  330.   alpha - 指定64-bit Alpha架构
  331.   amd64 - 指定AMD64架构
  332.   arm - 指定ARM架构
  333.   hppa - 指定HP PA-Risc架构
  334.   ia64 - 指定64-bit 安腾架构
  335.   mips - 指定MIPS based架构
  336.   ppc - 指定PowerPC架构
  337.   ppc64 - 指定PowerPC64架构
  338.   ppc-macos - 指定操作系统是Mac OS (Jaguar, Panther or Tiger)
  339.   s390 - 指定zSeries/s390架构
  340.   sh - 指定SuperH架构
  341.   sparc - 指定(32-bit) Sparc架构
  342.   x86 - 指定x86架构
复制代码


参考文献:
繁体中文手册中关于use的说明:
http://www.gentoo.org/doc/zh_tw/ ... l?part=2&chap=2
wiki.gentoo.tw上面的USE说明:
http://wiki.gentoo.tw/mediawiki/index.php/Gentoo_USE
发表于 2006-10-8 01:20:31 | 显示全部楼层
有空搬到wiki上去吧,这样别人也可以帮你改
USE最主要就是一个目的
决定./configure时的配置选项(所以有时候也会间接影响依赖关系)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-10-8 08:18:39 | 显示全部楼层
好,zh_cn的wiki确实有很多东西需要完善:)
回复 支持 反对

使用道具 举报

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

本版积分规则

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