linux:gentoo
Table des matières
Compilation
Options différentes pour certains paquets
- Un fichier par paquet :
Dans le fichier /etc/portage/env/CATEGORIE/PAQUET
:
CFLAGS="$CFLAGS -Og" CXXFLAGS="$CXXFLAGS -Og"
- Un fichier de config :
Dans le dossier /etc/portage/env
, créer les fichiers :
- O1.conf
COMMON_FLAGS="${COMMON_FLAGS} -O1" CFLAGS="${COMMON_FLAGS} -O1" CXXFLAGS="${COMMON_FLAGS} -O1" FCFLAGS="${COMMON_FLAGS} -O1" FFLAGS="${COMMON_FLAGS} -O1" LDFLAGS="${LDFLAGS} -Wl,-O1"
et
- j2.conf
MAKEOPTS="-j2" EMERGE_DEFAULT_OPTS="-j2 --load-average=2"
Puis dans le fichier package.env
, indiquer pour chaque paquet quel fichier utiliser :
- package.env
sys-devel/llvm j2.conf sys-devel/clang j2.conf dev-libs/ocl-icd O1.conf
Ici, on utilise :
j2.conf
quand le paquet ne peut pas compiler avec tous les cœurs. Notamment car on ne peut pas différencier le nombre d'instances en parallèle pour le compilateur et le lieur.O1.conf
quand on a les erreurs classiques de typeundefined symbol
pour les fonctions mal déclaréesinline
et qui ne compile que sans-O0
.
debugcompress vs -Wl,--compress-debug-sections,zlib
C'est la même chose :
debugcompress
et-Wl,--compress-debug-sections,zlib
: 534056 odebugcompress
: 534080 o-Wl,--compress-debug-sections,zlib
: 534056 o- sans rien : 1097752 o
clang
Ne pas compiler avec default-compiler-rt
. Sinon, il sera nécessaire de lier chaque compilation clang
avec -lgcc_s
pour éviter les erreurs de type undefined reference to symbol '_Unwind_Resume@@GCC_3.0
'.
clang 7, undefined reference '_Unwind_Resume@@GCC_' Archive du 27/01/2019 le 15/01/2020
Compression multithread
Compresser en multithreading sous Linux Archive du 30/01/2015 le 13/12/2019
echo "app-arch/pigz symlink" >> /etc/portage/package.use/custom echo "app-arch/lbzip2 symlink" >> /etc/portage/package.use/custom emerge pigz lbzip2
Cela marche pour les tar -czvf
(tar.gz
) et tar -cjvf
(tar.bz2
). Il n'y a pas équivalent pour tar.xz
.
Gestion des paquets
- Liste des paquets installés depuis un dépôt :
equery has repository ${repo_name}
oueix –installed-from-overlay
linux/gentoo.txt · Dernière modification : 2021/06/26 09:23 de root