Posté par remico .
En réponse à la dépêche Fedora 29.
Évalué à 3.
Cette compilation en sse2 c'est bien ce qui avait piqué ma curiosité sur la dépêche de l'annonce de la Fedora 29 Béta.
Comme j'ai un cpu non-sse2, j'ai essayé, les binaires provoquent une "Illegal Operation" comme si j'essayais de faire fonctionner un binaire 64bits sur un cpu 32bits. Le noyau d'install ou celui de la distribution ne veut pas booter non plus, idem pour la 28 pour le noyau, j'ai du passer par une autre méthode d'installation en adaptant https://wiki.centos.org/HowTos/ManualInstall et le noyau + modules recopiés de Debian Stretch le reste de la distribution passe avec Mate excepté firefox. Même une vieille version de firefox (Fedora 24) ne convient pas en particulier les sites qui nécessitent javascript, palemoon 27 de 2016 sans sse2 fait le job. Le lien est sur leur site, Linux sse build : http://www.palemoon.org/contributed-builds.shtml
Sur la Fedora 28 j'ai même trouvé le fichier à modifier, c'est le fichier rpmrc dans /usr/lib/rpm/redhat qui contient pour i686 :
-m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection
Il y a aussi une ligne pour march=athlon mais c'est le flag de compilation pour i686 que je vois quand je recompile un paquet, j'ai remplacé -march=i686 -mtune=generic par -march=native et à la recompilation j'ai bien le nouveau flag.
C'est cette ligne qui a dû être complétée par -msse2 pour la Fedora 29. En théorie il serait possible de recompiler tout et se faire une sorte de Fedora 29 from scratch.
Ce sera quand même beaucoup plus simple de recompiler un noyau pour la 28 et éventuellement quelques paquets qui du coup seront mieux optimisés avec march=native qu'avec march=i686. Cette recompilation serait encore plus valable pour les cpu récents, qui non seulement ont plus de puissance, mais aussi des jeux d'instructions plus récents que le sse2 de l'an 2000. Tout recompiler non mais quelques paquets c'est faisable, y compris sur une version 64bits.
Voilà en conclusion ce n'était pas une critique envers Fedora ou d'autres distributions i686 qui ne sont plus tout à fait i686, ce qui est étonnant ce n'est pas que la 29 ne passe plus c'est que la 28 avec quelques restrictions passe sur une machine de 20 ans. Ce n'était pas non plus un encouragement à utiliser de vieilles machines ou une sorte de snobisme, c'est tout à fait utilisable y compris sans passer par des distibs spécialisées pour vieux ordis, j'ai d'ailleurs d'autres vieilleries plus récentes (athlon64 ou core2 duo) sur les étagères que je vais relancer mais ce n'est vraiment pas pressé, et j'y mettrais plutôt une version 64bits, cela me paraît plus logique.
[^] # Re: Petite précision sur les processeurs sse2
Posté par remico . En réponse à la dépêche Fedora 29. Évalué à 3.
Cette compilation en sse2 c'est bien ce qui avait piqué ma curiosité sur la dépêche de l'annonce de la Fedora 29 Béta.
Comme j'ai un cpu non-sse2, j'ai essayé, les binaires provoquent une "Illegal Operation" comme si j'essayais de faire fonctionner un binaire 64bits sur un cpu 32bits. Le noyau d'install ou celui de la distribution ne veut pas booter non plus, idem pour la 28 pour le noyau, j'ai du passer par une autre méthode d'installation en adaptant https://wiki.centos.org/HowTos/ManualInstall et le noyau + modules recopiés de Debian Stretch le reste de la distribution passe avec Mate excepté firefox. Même une vieille version de firefox (Fedora 24) ne convient pas en particulier les sites qui nécessitent javascript, palemoon 27 de 2016 sans sse2 fait le job. Le lien est sur leur site, Linux sse build : http://www.palemoon.org/contributed-builds.shtml
C'est assez facile de recompiler les paquets :
http://srobb.net/rpmbuild.html
Sur la Fedora 28 j'ai même trouvé le fichier à modifier, c'est le fichier rpmrc dans /usr/lib/rpm/redhat qui contient pour i686 :
-m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection
Il y a aussi une ligne pour march=athlon mais c'est le flag de compilation pour i686 que je vois quand je recompile un paquet, j'ai remplacé -march=i686 -mtune=generic par -march=native et à la recompilation j'ai bien le nouveau flag.
C'est cette ligne qui a dû être complétée par -msse2 pour la Fedora 29. En théorie il serait possible de recompiler tout et se faire une sorte de Fedora 29 from scratch.
Ce sera quand même beaucoup plus simple de recompiler un noyau pour la 28 et éventuellement quelques paquets qui du coup seront mieux optimisés avec march=native qu'avec march=i686. Cette recompilation serait encore plus valable pour les cpu récents, qui non seulement ont plus de puissance, mais aussi des jeux d'instructions plus récents que le sse2 de l'an 2000. Tout recompiler non mais quelques paquets c'est faisable, y compris sur une version 64bits.
Voilà en conclusion ce n'était pas une critique envers Fedora ou d'autres distributions i686 qui ne sont plus tout à fait i686, ce qui est étonnant ce n'est pas que la 29 ne passe plus c'est que la 28 avec quelques restrictions passe sur une machine de 20 ans. Ce n'était pas non plus un encouragement à utiliser de vieilles machines ou une sorte de snobisme, c'est tout à fait utilisable y compris sans passer par des distibs spécialisées pour vieux ordis, j'ai d'ailleurs d'autres vieilleries plus récentes (athlon64 ou core2 duo) sur les étagères que je vais relancer mais ce n'est vraiment pas pressé, et j'y mettrais plutôt une version 64bits, cela me paraît plus logique.