Um pouco de fundo
Historicamente falando, alguns usuários do FreeBSD não se deram bem com os usuários dos Linuxes. Por muitos anos, até o Linux from Scratch , e os filhos de quem é o Gentoo, os usuários não conseguiam obter o verdadeiro código-fonte em seus sistema, a menos que optem por usar o Sistema de Ports do FreeBSD . Por essa razão, os usuários do FreeBSD se viam como superiores, mas como o Gentoo e o Portage amadureceram, o palco estava montado para a batalha na foto abaixo (e o G está para trás, eu sei):
AssimcomooPortageusaaconstruçãoebuild
,asportas
Por que o Gentoo é chamado de Meta Distribution
Por favor, leia GLEP: 22 , parte do G entoo L inux E nhancement P roject , na qual a Seção de Especificação declara:
Keyword Fragments
Each keyword needs to specify, either explicitly or implicitly, the following parameters: ARCH, USERLAND, LIBC, and KERNEL.
ARCH
x86, amd64, cobalt, mips64, arm, hppa, ia64, ppc64, sparcKERNEL
linux, selinux, openbsd, freebsd, netbsd, macosxUSERLAND
gnu, bsdLIBC
glibc, openbsd, freebsd, netbsd, macosx(The above examples are not meant to be complete. Hurd, for example is not included because I know very little about Hurd.)
A fully-specified keyword would look like "ARCH-KERNEL-USERLAND-LIBC", so, for example, "ppc-fbsd-gnu-glibc" would indicate a Gentoo system corresponding to a ppc architecture running the FreeBSD kernel with a GNU userland and glibc as the system C library.
elibc
é a abreviação de Environment_LIBC, que aponta para o fragmento de palavra-chave LIBC . O LIBC é a implementação do Linux de uma Biblioteca de Padrões C. Como a Biblioteca de Padrões depende de todas as palavras-chave citadas acima, ela é definida em todo o sistema e por meio de herança variável, uma base de pacote no Gentoo (consulte /etc/portage/make.profile
, que é um link simbólico para /usr/portage/profiles
). usando eselect profiles
).
ecyoung@bedroom-gentoo ~ $ sudo emerge -av glibc
Password:
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] sys-libs/glibc-2.20-r2:2.2::gentoo USE="gd (multilib) -debug (-hardened) -nscd -profile (-selinux) -suid -systemtap -vanilla" 0 KiB
Total: 1 package (1 reinstall), Size of downloads: 0 KiB
Would you like to merge these packages? [Yes/No]
Para produzir o LIBC acima, meu perfil contém ou herda:
- ARCH - amd64
- KERNEL - linux
- USERLAND - gnu
- LIBC - glibc
É a variável USE e palavra-chave USE Flags explicada neste GLEP, que torna o Gentoo tão poderoso. Esse é o principal motivo pelo qual eu escolhi o Gentoo como minha distribuição principal, e também a razão pela qual eu lerei e / ou tentarei responder todas as perguntas aqui marcadas como /gentoo
.
Quando as palavras-chave e as variáveis de ambiente forem misturadas com o USE Flags por pacote, a meta-distribuição será criada. Embora não exista um número infinito de maneiras para compilar um pacote, posso garantir que todos os pacotes em um sistema Gentoo foram afetados por uma USE flag de uma forma ou de outra.
Como a bandeira funciona
Para instalar o FreeBSD, você precisa usar o Manual fornecido pelo FreeBSD para instalar o FreeBSD, e então dentro de uma instalação nova, use as instruções do Gentoo FreeBSD no Wiki . Isso adiciona a seguinte funcionalidade ao FreeBSD:
Gentoo/FreeBSD is a Gentoo system based on FreeBSD. It is FreeBSD with the following changes:
- Portage replaces ports.
- The base system is managed by portage.
- Software in ./contrib and ./crypto is replaced with Gentoo Linux versions.
- The rc system is replaced with OpenRC.
- Python, wget and bash are included in the base system to support portage.
- FreeBSD's bootloader is removed from the base system (useful for jails).
O mantenedor dos dois pacotes com os quais sua pergunta estava preocupada adicionou a opção de compilar o pacote em um sistema FreeBSD. Se você não está em um sistema FreeBSD, essa mudança não afeta você. Isso foi indicado pelo portage informando que a bandeira estava mascarada . Você não precisa mudar nada. Por um breve, e eu quero dizer breve, a explicação da diferença entre o FreeBSD e Linux, veja HTG explica: qual é a diferença entre o Linux e o BSD? .