[ << ]
[ < ]
[ Sommaire ]
[ > ]
[ >> ]
3. Logiciels
Table des matières :
3.a. Noyaux disponibles
Sur le LiveCD
Pour ce qui est de la version 2004.3, le LiveCD contient un noyau sur lequel
vous pouvez démarrer. Ce noyau s'appelle gentoo et supporte le SMP. Cela
dit, les machines monoprocesseurs peuvent également l'utiliser.
Utiliser les bonnes sources de noyau
Important :
Utilisez la série de noyaux sys-kernel/gentoo-sources !
Elle contient des correctifs spécifiques aux AMD64, ainsi qu'un certain nombre
d'améliorations supplémentaires. Nous ne pourrons pas vous aider si vous
utilisez d'autres sources.
|
Construire un noyau pour un portable eMachine
Quand vous configurez le noyau pour être utilisé sur un portable Athlon64 Mobile
de type eMachine, vous devez compiler le support USB dans le noyau et non
en module. Si vous ne le faites pas, vous aurez des erreurs de type
« unknown keypress » de la part de atkbd.c. Désactiver le
support USB ne fonctionnera pas.
Les rapports de bon ou mauvais fonctionnement de ces portables sur la version
2004.3 sont à soumettre sur le bugzilla de
Gentoo.
Les noyaux 2.4.x officiellement désuets
La série des noyaux 2.4.x est officiellement déclarée désuète pour les
AMD64. Depuis le 2.4.23-pre7, devfs a été désactivé (en dur dans le noyau),
car il était la cause de corruption de mémoire. Chez Gentoo, nous n'avons pas
remarqué de tels problèmes, mais les 2.4 ne sont de toute façon pas une bonne
solution sur Gentoo sans le devfs.
gcc 3.3 officiellement désuet
gcc3.3 est officiellement désuet pour les AMD64, depuis la sortie de Gentoo
2004.3. Tous les supports de la 2004.3 sont basés sur gcc 3.4.x.
3.b. Kernel Panic au démarrage
Si vous avez des « Kernel Panic » au démarrage, essayez d'utiliser le
paramètre idle=poll dans les options de démarrage. Il y a un problème
avec plusieurs BIOS et il semble que cela touche principalement les cartes mères
à chipset VIA. Vous ne devez essayer de passer cette option au démarrage
qu'après avoir mis à jour votre BIOS vers la dernière version disponible
de votre constructeur de carte mère. Vous devriez également pouvoir résoudre ce
problème en désactivant le support USB au démarrage dans votre BIOS. Si vous
êtes obligé de mettre l'option idle=poll, merci de contacter votre
constructeur de carte mère ou fournisseur de BIOS pour qu'il corrige le BIOS sur
l'erreur de CPU N°93 (CPU Errata #93).
Pour plus d'information sur ce point, vous pouvez consulter les archives des
listes de diffusion suivantes :
Vous remarquerez que ce n'est pas un problème spécifique à Gentoo !
3.c. Support des systèmes de fichiers
Nous vous recommandons actuellement d'utiliser les formats ext2/3. Nous avons
des rapports qui indiquent des problèmes aléatoires avec le reiserfs sur AMD64
et avons entendu parler de problèmes majeurs avec le JFS sur des systèmes
64 bits (ce qui semble réellement étrange, dans la mesure où le JFS a été
initialement conçu pour des systèmes 64 bits).
| Système de fichiers |
Statut |
| ext2 |
STABLE |
| ext3 |
STABLE |
| XFS |
STABLE, >=gentoo-dev-sources-2.6.3 |
| JFS |
STABLE, >=gentoo-dev-sources-2.6.7 |
| reiserfs |
STABLE, >=gentoo-dev-sources-2.6.5 |
| reiser4 |
NE FONCTIONNE PAS SUR AMD64, N'EST SUPPORTÉ SUR AUCUNE ARCHITECTURE ! |
Merci de nous rapporter tous les problèmes rencontrés avec vos systèmes de
fichiers sur bugs.gentoo.org.
3.d. Le gestionnaire de démarrage : Compilation de grub
Grub ne se compile pas dans un environnement 64 bits pur. Il ne pourra être
compilé qu'en utilisant gcc avec le support multilib. Gentoo 2004.3 inclut le
support multilib par défaut. Si vous choisissez de supprimer le support
multilib pour gcc, alors vous devrez utiliser grub-static.
grub-static peut être installé en utilisant les commandes
suivantes :
Exemple de code 4.1 |
# emerge grub-static
# cp -Rpv /usr/share/grub/i386-pc/* /boot/grub
|
3.e. Certains paquets sont toujours masqués
Certains paquets marqués stables sur d'autres architectures sont toujours
masqués sur AMD64. Cela ne signifie pas forcément qu'ils ne fonctionnent pas,
mais que, simplement, aucun développeur Gentoo n'a pu les tester sur une machine
AMD64. Si vous le pouvez, merci de tester ces applications masquées et de soumettre un rapport de bogue pour informer
les développeurs que le paquet fonctionne ou pas.
3.f. Les paquets qui ne fonctionnent pas
Ne fonctionnent actuellement pas :
- Firebird (la base de données, PAS le navigateur).
Les applications qui ne fonctionnent pas en mode 64 bits, mais qui
fonctionnent en mode 32 bits, en supposant que
app-emulation/emul-linux-x86-baselibs et compagnie soient installés :
-
Tout programme qui utilise des DLL 32 bits qui viennent de Windows (comme
le support de mplayer/xine pour certains formats propriétaires).
-
Tous les programmes qui nécessitent un code assembleur en 32 bits.
3.g. Le support de Java
Blackdown a sorti une version de Java pour Linux sur AMD64 en 64 bits
natif. C'est une candidate de sortie donc n'espérez pas qu'elle soit parfaite.
Elle se trouve dans Portage en tant que blackdown-jdk-1.4.2 et
blackdown-jre-1.4.2.
Certaines personnes ont remarqué que la machine virtuelle Java 64 bits est
plus lente que la version 32 bits. Juergen Kreileder, du projet Blackdown,
a apporté une réponse à cette remarque :
Exemple de code 7.1 |
Actuellement, la machine virtuelle 64 bits est plus rapide que la
32 bits dans la plupart des tests effectués.
La différence que ces personnes ont remarqué doit probablement
provenir de l'utilisation de machines virtuelles différentes :
La version i386 est fournie avec le client de machine virtuelle
HotSpot et le serveur HotSpot associé, et la machine virtuelle
client est utilisée par défaut. La version AMD64 n'est accompagnée
que du serveur de machine virtuelle, le client n'a pas encore été
porté.
En général, le serveur est la machine virtuelle la plus rapide. Ses
compilateurs utilisent plus d'optimisations et sont plus aggressifs
que ceux de la machine virtuelle client. Il génère en général un
code bien meilleur.
La contrepartie est que ces optimisations ont un coût en temps CPU
et en mémoire. Ce qui fera que lancer du code dans la machine
virtuelle client est souvent plus rapide (au moins au début) que
sur la machine virtuelle serveur.
En d'autres termes : il n'est pas correct de comparer le client i386
avec le serveur AMD64. Vous devez comparer le serveur i386 (c'est à
dire « java -server ... ») avec le serveur AMD64.
|
Il a également répondu à une question portant sur le temps d'attente à
espérer avant de pouvoir disposer de la machine virtuelle client :
Exemple de code 7.2 |
Elle ne sera pas présente dans la version finale de la 1.4.2. Ce ne
sera peut-être pas pour la 1.5.0 (pour Sun et Blackdown), Sun est
content de son port du serveur et n'est pas vraiment intéressé par
sortir un portage du client (les autres machines virtuelles 64 bits
pour IA64 et SPARC64 disposent également uniquement du serveur). De
plus, c'est trop de travail (je dirais dans les 10-13 semaines/homme)
pour le faire sans rémunération.
|
Donc si vous voulez lancer des tests, soyez sport, utilisez « java
-server » sur les deux architectures concernées et n'espérez pas avoir une
version de machine virtuelle client d'ici un petit bout de temps.
Une fois que vous aurez installé java, le lien symbolique suivant est nécessaire
pour pouvoir l'utiliser avec mozilla (et probablement aussi konqueror) :
Exemple de code 7.3 |
/usr/lib/nsbrowser/plugins/libjavaplugin_oji.so -> \
/opt/blackdown-jdk-1.4.2_rc1/jre/plugin/amd64/mozilla/libjavaplugin_oji.so
|
3.h. Installer OpenOffice.org
OpenOffice.org n'est actuellement disponible qu'en binaire 32 bits, dans la
mesure où la version 1.1.x ne se compilera pas sur un AMD64. Pour installer
OpenOffice.org, installez le paquet app-office/openoffice-bin.
Note :
N'espérez même pas essayer de compiler OpenOffice.org à partir des sources.
C'est un effort vain qui ne vous mènera qu'à des nuits blanches inutiles.
|
3.i. Configurer correctement les paramètres CFLAGS
À la différence de gcc 3.3, gcc 3.4 demande que l'on utilise -march. Les
paramètres CFLAGS les plus appropriés pourraient être ceux-ci :
Exemple de code 9.1 : gcc-3.4 CFLAGS |
...
CFLAGS="-march=k8 -O2 -pipe"
...
|
Note :
-march=k8 est équivalent à -march=athlon64 qui lui même l'est à
-march=opteron.
|
Il arrive qu'il y ait des problèmes avec la construction des objets partagés si
on omet le paramètre -fPIC. La raison est expliquée sur ce message de
liste de diffusion : Porting to Hammer
-- Descendez à « Shared libraries must be compiled with -fPIC ». Si
vous trouvez des paquets qui ont besoin du paramètre -fPIC pour être
lancés/liés correctement, merci de nous les indiquer immédiatement, afin que
l'on puisse mettre à jour ces paquets. Merci de ne pas spécifier -fPIC
dans vos paramètres généraux CFLAGS dans la mesure où ce n'est pas une solution
acceptable, mais juste une petite astuce de contournement.
Ne mettez pas -m32 dans vos paramètres USE, dans la mesure où vous ne
souhaiterez probablement pas compiler votre système en mode 32 bits. Par
défaut, Gentoo ne supporte de toute façon pas la compilation de binaires en
32 bits. Utiliser le paramètre -m64 est inutile dans la mesure où le
compilateur utilisera le mode 64 bits par défaut et cela peut avoir des
effets négatifs sur le code qui dispose du paramètre -m32 de manière
interne, pour compiler du binaire 32 bits (comme par exemple les dernières
versions de grub).
Attention :
N'utilisez pas -Os. C'est un paramètre connu pour empêcher des parties de
KDE 3.2.0 de compiler.
|
3.j. Paramètres USE qui sont ignorés
Les paramètres USE mmx, 3dnow, sse et sse2 sont
ignorés sur AMD64, dans la mesure où tous les processeurs AMD64 supportent ces
jeux d'instructions. Ils sont ignorés car ils activent l'optimisation
32 bits d'assembleur pour certains paquets.
3.k. Rapporter des bogues et soumettre des correctifs
Si vous avez une application avec laquelle vous avez des problèmes, si vous
disposez d'un correctif pour corriger des problèmes ou simplement si vous voulez
rapporter une compilation réalisée avec succès afin que nous puissions en tenir
compte dans Portage, merci de rapporter un bogue sur bugs.gentoo.org.
Note :
Vous pouvez mettre amd64@gentoo.org dans le
champ « CC: » si vous le souhaitez.
|
Note :
Pour soumettre un correctif, vous devez tout d'abord créer un rapport de bogue,
puis revenir sur le rapport et choisir « Create a new attachment ».
|
[ << ]
[ < ]
[ Sommaire ]
[ > ]
[ >> ]
Ce document est protégé par la licence Creative
Commons : Paternité - Partage des Conditions Initiales à
l'Identique 2.5.
|