Outils pour utilisateurs

Outils du site


linux:gentoo

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
linux:gentoo [2017/10/31 22:53] – Ajout de "Options de compilation différentes pour certains paquets" rootlinux:gentoo [2021/06/26 09:23] (Version actuelle) – [Options différentes pour certains paquets] : ajout de "LDFLAGS" root
Ligne 1: Ligne 1:
 ====Compilation==== ====Compilation====
 ===Options différentes pour certains paquets=== ===Options différentes pour certains paquets===
 +
 +  * Un fichier par paquet :
 +
 Dans le fichier ''/etc/portage/env/CATEGORIE/PAQUET'' : Dans le fichier ''/etc/portage/env/CATEGORIE/PAQUET'' :
   CFLAGS="$CFLAGS -Og"   CFLAGS="$CFLAGS -Og"
   CXXFLAGS="$CXXFLAGS -Og"   CXXFLAGS="$CXXFLAGS -Og"
  
 +  * Un fichier de config :
 +
 +Dans le dossier ''/etc/portage/env'', créer les fichiers :
 +
 +<file txt 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"
 +</file>
 +
 +et
 +
 +<file txt j2.conf>
 +MAKEOPTS="-j2"
 +EMERGE_DEFAULT_OPTS="-j2 --load-average=2"
 +</file>
 +
 +Puis dans le fichier ''package.env'', indiquer pour chaque paquet quel fichier utiliser :
 +
 +<file txt package.env>
 +sys-devel/llvm j2.conf
 +sys-devel/clang j2.conf
 +
 +dev-libs/ocl-icd O1.conf
 +</file>
 +
 +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 type ''undefined symbol'' pour les fonctions mal déclarées ''inline'' 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 o
 +  * ''debugcompress'' : 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'''.
 +
 +[[https://forums.gentoo.org/viewtopic-t-1092354-start-0.html|clang 7, undefined reference '_Unwind_Resume@@GCC_']] {{ :linux:gentoo:gentoo_forums_voir_le_sujet_-_clang_7_undefined_reference_unwind_resume_gcc_solved_2020-01-15_07_22_51_.html |Archive du 27/01/2019 le 15/01/2020}}
  
 ====Compression multithread==== ====Compression multithread====
-[[https://www.linuxtricks.fr/wiki/compresser-en-multithreading-sous-linux|Source]]{{ :linux:gentoo:compresser_en_multithreading_sous_linux_-_documentation_-_wiki_-_linuxtricks.htm.maff |Archive}}+[[https://www.linuxtricks.fr/wiki/compresser-en-multithreading-sous-linux|Compresser en multithreading sous Linux]] {{ :linux:gentoo:compresser_en_multithreading_sous_linux_-_documentation_-_wiki_-_linuxtricks_2019-12-13_3_10_32_pm_.html |Archive du 30/01/2015 le 13/12/2019}}
  
 <code bash> <code bash>
Ligne 17: Ligne 67:
  
 Cela marche pour les ''tar -czvf'' (''tar.gz'') et ''tar -cjvf'' (''tar.bz2''). Il n'y a pas équivalent pour ''tar.xz''. 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}'' ou ''eix --installed-from-overlay''
linux/gentoo.1509486822.txt.gz · Dernière modification : 2017/10/31 22:53 de root