Journal Le Littré libre a été porté sur Qt 5 en 2022 — et personne ne l'a su

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
11
28
août
2026

Sommaire

En 2008, j'avais consacré un billet à un petit logiciel libre repéré sur Framasoft : dictionnaire-le-littre, une application Qt qui embarque l'intégralité du dictionnaire d'Émile Littré et se consulte hors ligne, sans installation ni base de données. Licence CeCILL, interface de Murielle Descerisiers, données issues de la numérisation XML de François Gannaz.

Dix-huit ans plus tard j'ai retrouvé le dossier sur mon disque, daté de juillet 2009. Double-clic : rien. Et les trois liens de téléchargement de mon billet renvoient un 404 — Google Code a fermé en 2016.

En cherchant à réparer ça, je suis tombé sur quelque chose qui mérite mieux que mon blog.

Le projet a déménagé deux fois, et l'information n'est jamais sortie

Étape Dernier signe de vie
Original Qt 4, Murielle Descerisiers Google Code, v1.0 puis v2.0 2009
Miroir automatique, README appelant à l'aide pour un portage Qt récent GitHub, Alexandre Honorat octobre 2016
Portage Qt 5, Tom Nirrengarten et Roland Chastain GitLab + SourceForge février 2023

Deux personnes ont donc repris un logiciel abandonné, l'ont porté sur Qt 5, et ont publié en octobre 2022 une version 2.1 avec des binaires précompilés pour Linux 64 bits et pour Windows. La 2.1.1, un mois plus tard, ne contient plus que les sources : la 2.1 reste la dernière accompagnée d'exécutables.

SourceForge affiche quelques téléchargements par semaine. Le travail a été fait, il est en ligne, et il n'a atteint à peu près personne. C'est ça, l'objet de ce journal.

Ce que ça donne à l'essai

Testé sur Ubuntu 25.10. Littre-2.1-portable-linux.zip contient bien un ELF x86-64, et il lui manque exactement deux paquets :

sudo apt install libqt5printsupport5t64 libqt5xml5t64

(Sur Debian : libqt5printsupport5 et libqt5xml5. Le second n'est pas une dépendance du premier, il faut nommer les deux.)

Deux pièges qui font croire à un plantage. La fenêtre met une vingtaine de secondes à apparaître — au bout de dix, le processus tourne et l'écran reste vide, c'est normal, il indexe. Et si le bus d'accessibilité est actif, ce qui est le cas par défaut sous GNOME, le titre devient « Dictionnaire le Littré (Mode accessible) » : ce n'est pas un mode dégradé.

Second sujet : faire repartir le binaire de 2009

J'avais toujours mon dossier de 2009, et un exécutable qui refuse de démarrer, c'est une énigme posée. Ce bout-là ne parle plus vraiment du Littré : c'est une méthode pour n'importe quel binaire i386 orphelin, et il en existe une génération entière.

Diagnostic : ELF 32 bits, et ldd qui répond « n'est pas un exécutable dynamique » — message trompeur, c'est ldd en 64 bits qui ne sait pas le charger. readelf -d donne 18 dépendances et aucune libQt : Qt 4.5.2 est lié statiquement. Sur ces 18, dix-sept existent encore en 32 bits dans les dépôts. Une seule manque, et elle bloque tout : libpng12, sortie d'Ubuntu après la 16.04.

C'est exactement le mur d'un fil ubuntu-fr d'octobre 2014, « Installer le Littré en 64bits », qui se termine sur un wrong ELF class: ELFCLASS64 et un « prends StarDict à la place ». Douze ans après, il sort toujours en tête des recherches, sans solution.

La contrainte que je me suis fixée : ne rien installer sur le système. Une seule commande demande les droits root, et elle n'installe rien —

sudo dpkg --add-architecture i386 && sudo apt update

— ensuite apt-get download paquet:i386 récupère les archives sans être root, dpkg-deb -x les extrait dans un sous-dossier, libpng12 se reprend sur old-releases.ubuntu.com, et l'éditeur de liens s'invoque à la main :

GCONV_PATH="$R/usr/lib/i386-linux-gnu/gconv" \
exec "$R/usr/lib/i386-linux-gnu/ld-linux.so.2" \
  --library-path "$R/usr/lib/i386-linux-gnu:$R/lib/i386-linux-gnu" \
  ./Littre

26 Mo dans un sous-dossier, rien dans le système, désinstallation par rm -rf.

Le GCONV_PATH est le détail qu'on ne trouve qu'en le rencontrant : les modules de conversion de la glibc sont eux aussi liés à l'architecture. Sans lui, Qt annonce QIconvCodec: using ASCII for conversion, iconv_open failed et affiche un dictionnaire de la langue française intégralement dépourvu d'accents. Pour le Littré, on fait difficilement pire.

Les objections que je vois venir, et ce que j'en pense

« Recompile, c'est tout. » Objection juste pour la 2.1 : les sources sont là, le README donne qmake && make, et c'est probablement la bonne réponse. Je ne l'ai pas testée, je le dis plutôt que de faire semblant. Elle ne s'applique pas à la 2.0, dont les sources sont en Qt 4 — plus empaqueté nulle part. Et surtout elle ne s'applique pas au cas général qui m'intéresse ici : les binaires orphelins dont on n'a pas les sources. C'est là que la méthode sert.

« Un conteneur ferait pareil. » Distrobox ou podman avec une vieille image, oui, et c'est sans doute le réflexe le plus raisonnable aujourd'hui. Les compromis sont clairs : plusieurs centaines de mégaoctets contre 26, un runtime à installer et à maintenir contre aucun, en échange d'une vraie isolation que ma méthode n'offre pas. Si l'isolation compte pour votre cas, prenez le conteneur.

« C'est du Ubuntu partout. » Vrai. Les suffixes t64, old-releases.ubuntu.com : tout est à adapter. Pour Debian, snapshot.debian.org joue le même rôle d'archive et garde les vieux libpng12-0. Le principe — télécharger, extraire, invoquer ld-linux.so.2 avec --library-path — ne dépend d'aucune distribution.

« Faire tourner un binaire de 2009, sérieusement ? » La méthode répare l'exécution, pas le logiciel : aucun correctif ne viendra. Pour un dictionnaire qui lit trente fichiers figés depuis 1872 et ne touche pas au réseau, le risque est à peu près nul. Pour un client de messagerie, la réponse serait non.

Ce qui compte vraiment là-dedans

Le logiciel peut bien dormir sur SourceForge : le patrimoine, c'est la numérisation de François Gannaz, toujours en ligne sur Bitbucket sous licence libre. C'est elle qui alimente littre.org, le paquet stardict-xmlittre de vos dépôts, et l'application dont il est question ici. Pour simplement consulter le Littré, ces deux-là suffisent amplement.

Une dernière chose, trouvée en rouvrant mon billet de 2008 pour le corriger. Ses paragraphes portent l'attribut -qt-block-indent, une propriété propriétaire de Qt qui n'existe dans aucun navigateur : l'article du dictionnaire avait été produit par la fonction « exporter en HTML » du logiciel, puis collé tel quel. Une partie de ce billet a donc été écrite par le programme que je venais de remettre en marche — qui tournait dans un coin de l'écran pendant que je recopiais la ligne.


LiensSourceForge, version 2.1 avec binaires · dépôt GitLab · archive Google Code de la 2.0 · données XML

Licences — code sous CeCILL, données XML sous CC BY-SA, texte d'origine dans le domaine public.

La version détaillée, avec les commandes complètes, la fabrication de l'entrée de menu et l'icône récupérée dans _NET_WM_ICON de la fenêtre, est sur mon blog. Tout a été exécuté le 28 août 2026 sur Ubuntu 25.10.

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.