Table des matières

Compilation

Options différentes pour certains paquets

Dans le fichier /etc/portage/env/CATEGORIE/PAQUET :

CFLAGS="$CFLAGS -Og"
CXXFLAGS="$CXXFLAGS -Og"

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 :

debugcompress vs -Wl,--compress-debug-sections,zlib

C'est la même chose :

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