Convertir un .deb amd64 en i386

Bonjour,

Peut-on convertir un fichier .deb prévu pour amd64 en i386 ?
Si oui, comment

Sachant que je suis sur Mx Linux (en quelque sorte AntiX)

Merci

Bonjour,

Il me semble que Multi-arch permet d’utiliser des paquets i386 sur amd64 mais que dans le sens contraire, ce n’est pas possible.

Si le programme correspondant au paquet est également disponible sous forme de code source alors il doit être possible de créer un paquet i386.

Bonjour,

un paquet .deb est en fait une archive qui contient:

  • les exécutables du paquet (le programme à proprement parler), plus les éventuels fichiers de configuration nécessaires au fonctionnement paquet,
  • les fichiers (format texte) de contrôle (dans un dossier DEBIAN): informations sur le paquet (dont l’architecture), éventuels scripts de pré/post installation ou suppression, etc.

Donc en fait cela dépend de la nature des fichiers exécutables du paquet. S’il s’agit de binaires compilés, la conversion d’une architecture à une autre demande de recompiler le programme, ce qui nécessitera probablement des bibliothèques différentes, etc. Autant dire que ce n’est pas du tout trivial.

Si par contre les fichiers exécutables sont des programmes qui ne dépendent pas de l’architecture (par exemple un script tout simple en shell), il suffit juste de modifier le fichier control pour indiquer l’architecture souhaitée (mais normalement l’auteur du paquet a dû mettre “all” comme architecture).

PS: si tu veux analyser/modifier un paquet .deb; tu peux le télécharger sans installation avec apt-get -s paquet.
Ensuite, pour extraire les exécutables et fichiers de config, dpkg-deb -x fichier.deb
Pour extraire les fichiers de contrôle: dpkg-deb -e fichier.deb

Et pour (re)construire un paquet deb après tes modifications: dpkg-deb -b dossier-de-ton-paquet

Il s’agit de quand j’ai voulu installer discord sur mon ordinateur équipé d’un processeur i386.

Message d’erreur sur Gdebi-gtk :

Erreur : Architecture Amd64 incorrecte

Et oui, il y a un code source.

Mais c’est un autre fichier. (.tar.gz)

Il est à télécharger ici :

https://discordapp.com/api/download?platform=linux&format=tar.gz

Le site indique “Linux 64 bits requis”

Et non il n’y a pas le code source.

L’autre fichier tar.gz est constitué de binaires pour les distributions non debian.

D’autres l’ont réclamé, sans succès pour le moment

32 bit version for Linux – Customer Feedback for Discord