Appimage error: Unable to launch executable

Sunday, 26 October 2025
|
Écrit par
Grégory Soutadé

I distribute binary packages of libgourou in both compiled version (tar.gzip) and AppImage (and maybe .deb in the future). AppImage is a quite old packaging system (2004), not deprecated, but that evolve slowly. It allows to run application without the need to install additional libraries (all is bundled into one binary package). There is not so much tools for building an Appimage and I had to rely mines on a Python bundle not really maintained on Github. Not perfect, but does the job and result worked fine for a while. Unfortunately, starting this summer, there was an issue in running packaged applications. It took me a lot of time to find it, but I finally did it !

First, let's try to run already packaged AppImage

> cd /tmp/libgourou_utils-0.8.7-x86_64.AppImage
> ./acsmdownloader -h
Unable to launch '/tmp/.mount_acsmdoKfAEabacsmdownloader'

If you look in details with strace

> strace ./acsmdownloader -h
execve("/tmp/.mount_acsmdojHgmJpacsmdownloader", ["/tmp/.mount_acsmdojHgmJpacsmdown"..., "-h"],
0x561f614f3790 /* 95 vars */) = -1 ENOENT (No such file or directory)

"ENOENT (No such file or directory)" is confusing and really non obvious to understand, because the file is there and has execution permission ! Most of the time, it means you try to run an application that has been compiled for another architecture (x86 32 bits, arm ...).

This error is raised by a core component of Linux systems : ld-linux-XXX.so. It's used to load ELF file into memory and resolve all dependencies (shared libraries). Useful information can be found with file util

> file /usr/bin/tail
/usr/bin/tail: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked,
interpreter /lib64/ld-linux-x86-64.so.2,
BuildID[sha1]=0d3a849e80ee804476c13ed25b3b1ba819847b35, for GNU/Linux 3.2.0, stripped

AppImage is an ELF binary statically linked

> file libgourou_utils-0.8.7-x86_64.AppImage
libgourou_utils-0.8.7-x86_64.AppImage: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), static-pie linked,
BuildID[sha1]=b15b018a4f56042ad61c2b9e0504773f7da1ac38, stripped

It contains compiled binaries and libraries in a squashfs filesystem mounted by libfuse (which is its only dependency). We can access to them with

> ./acsmdownloader --appimage-extract
> cd squashfs-root

> strace ./acsmdownloader
execve("./acsmdownloader", ["./acsmdownloader"], 0x7ffdeb43fa30 /* 49 vars */) = -1 ENOENT (No such file or directory)
strace: exec: No such file or directory

Our core error, let's look deeper

> file acsmdownloader 
acsmdownloader: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked,
interpreter usr/lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0,
BuildID[sha1]=aaefe8dfc25186c9c3bb2c0e254f8ba09cdd7f7b, not stripped

We can see that the path of ld-linux-x86-64.so.2 is usr/lib64/ld-linux-x86-64.so.2 which is invalid !!!. Ahead "/" is missing (it has been removed by builder Python script). Moreover, since version 13 (or a bit earlier), Debian seems to have moved ld-linuxXXX.so from /lib64 to /usr/lib64 which break compatibility.

My solution is to patch binaries with patchelf in AppImageBuilder.yml, after they are copied into AppDir/usr/bin/

find AppDir/usr/bin/ -maxdepth 1 -type f -executable -exec  patchelf --set-interpreter /usr/lib64/ld-linux-x86-64.so.2 \{\} \;

Courses de fin d'année (2025)

Sunday, 12 October 2025
|
Écrit par
Grégory Soutadé

Logo Odyssea

Nouveau parcours pour cette édition 2025 d'Odyssea Cannes. Le village sportif se tiendra à l'esplanade Pantiero, juste à côté de la mairie et non loin du square Mistral où se déroulait les éditions précédentes. Le format, lui, ne change pas avec un 10km chronométré, un 5km chronométré ET non chronométré (marche), une course enfant de 1km et la possibilité de faire la course à distance avec l'application mobile. Rendez-vous donc le dimanche 26 octobre !

Départ course des paroisses

Pour décuver du pont de la veille, il y a la course des paroisses. Un cadre enchanteur dans le massif de l’Estérel avec le col de belle Barbe en point de mire. Là encore, il faudra choisir entre 5km ou 12km (ou 1.5km enfant ou randonnée) afin de soutenir la paroisse de St Raphaël, dont les bénévoles font un travail extraordinaire. Elle se tiendra le mardi 11 novembre 2025

Logo Cross Amnesty International

Quoi de mieux pour clôturer l'année qu'un petit cross entre Sophia et Valbonne ? La 42e édition du Cross manesty se tiendra le dimanche 14 décembre, organisé pour la seconde fois par l'AC Valbonne avec 2 formats : un 12km et un 4km (ainsi que le 1km et 2km pour les enfants).

Balade en Provence

Sunday, 28 September 2025
|
Écrit par
Grégory Soutadé

Un petit tour en Provence.

L'Isle sur la Sorgue

Cette première étape à L'Isle sur la Sorgue se mérite. Une fois sorti de l'autoroute et passé Cavaillon, le réseau routier devient très campagnard dès lors que l'on s'éloigne de la départementale ! Après avoir laissé la voiture au parking, il ne faut pas hésiter à s'enfoncer dans la vieille ville, la périphérie étant surtout résidentielle. On y découvre alors une petite ville à l'esprit typique Provençale. Le centre étant très vivant, particulièrement la place de la liberté. Nous sommes en pays d'Aix (en Provence), il est donc possible d'y déguster des Calissons ! (Ceux de la chocolaterie de Puyricard sont délicieux).

Avignon

On ne présente plus Avignon, cité des Papes et haut lieu de théâtre (plus d'une dizaine de salles dans le centre) avec son festival incontournable, qui préfigure de le saison nationale à venir. La ville est nichée entre le Gard et le Vaucluse, bordé par le Rhône et la Durance. C'est en 1309 que Clément V en fait une résidence pontificale. Les Papes étaient jusqu'à alors plus ou moins itinérants, avec plusieurs résidences réparties un peu partout.

Le choix du comté de Venaissin est très politique, l'Europe étant alors très morcelée et le royaume de France n'occupait que les deux-tiers (d'Ouest en Est) de sa configuration actuelle. Il était donc important d'avoir ce centre de pouvoir dans son propre Royaume. Les différents palais ne furent construits que par ses successeurs (dont Clément VI, qui acheta la ville à la comtesse de Provence en 1348). Peine perdue, puisque le 7e Pape d'Avignon, Grégoire XI, revint à Rome. Après sa mort précoce, guerre de pouvoir oblige, il y eu un schisme et 2 Papes ont officié en parallèle : un à Avignon et un à Rome ! La situation revint à la normale en 1411.

La situation géographique idéale de la ville au confluent de deux fleuves est un atout indéniable pour le commerce. Mieux encore, avec le pontificat, nombre de communautés religieuses ainsi que de riches bourgeois et hommes de pouvoir s'y installent. La ville bénéficie ainsi d'habitations et de palais cossues, tout en pierre de taille. Il y fourmille également beaucoup de places, petites ou grandes, où trônent des arbres majestueux (plusieurs fois centenaires), apportant un peu de fraîcheur pendant les chaudes journées d'été.

On pourra visiter le palais des Papes, dont ne subsiste d'origine que la chambre du Pape. Le reste ayant été pillé lors de la révolution et transformé ultérieurement en caserne. Il ne subsiste donc majoritairement que des immenses salles vides où il faudra s'orienter, dans un dédale d'escaliers, en suivant un marquage peu clair.

Saint Rémy de Provence

Encore un village typiquement Provençal, mais dont la notoriété est largement surévaluée. La faute à Vincent van Gogh qui passera un an ... à l'asile psychiatrique (de manière volontaire). Ce qui ne l'empêchera pas de peindre ! Aujourd'hui, le village est bondé, particulièrement les jours de marché, et il n'est pas très agréable de s'y promener.

Les Baux de Provence

Les Baux de Provence a joué un rôle important par le passé en tant que place stratégique, cette dernière étant situé tout en haut du massif des Alpilles, évitant ainsi un grand détour et permettant de voir loin l'arrivée d'envahisseurs. Là encore, il faudra y aller hors saisons car elle est prise d'assaut. Il n'y a d'ailleurs quasiment plus personne qui habite le village, mais, commerce oblige, le prix du parking est de 5€ minimum, pour 0 minutes ! La forteresse, aujourd'hui en ruines, se visite (prévoir un chapeau). L'autre attraction sont les carrières des lumières où des œuvres (thème qui change régulièrement) sont projetées dans les anciennes carrières de roche calcaire (qui ont notamment servies à l'édification des Baux de Provence et des villes alentours). Les plus gourmands pourront faire une halte à L'Oustau de Baumanière, le restaurant où officie le chef Glenn Viel, 3 étoiles au guide Michelin. Quant aux Alpilles qu'elle domine, elles renferment de nombreux chemins de randonnées.

Arles

Situé à la frontière des Bouches-du-Rhône et du Gard, Arles bénéficie elle-aussi du contrôle du Rhône. Même si elle n'a pas forcément bonne réputation, c'est pourtant une ville magnifique où trône en son cœur des arènes romaine très bien conservées, ainsi qu'un théâtre antique. Au delà de la partie HLM en périphérie, qui masque son rayonnement passé, on pourra découvrir un petit village dans la ville. Ville qui s'étend elle-même jusqu'à la mer !

Car, en plus des férias et de la tauromachie, traditions fortes en ces terres de Camargue (bonjour le sel, le riz de Camargue et sa Gardiane de taureau), Arles est le lieux incontournable pour tous les amateurs de photographie, avec la manifestation Les rencontres d'Arles qui se tiennent chaque été depuis 1970 ! Comme pour le festival d'Avignon, les expositions s'adressent avant tout à un public averti. Mais il se déroule en parallèle le festival "off" : des mini expositions dans toute la ville (librairie, restaurant...), et même parfois dans des lieux insolites comme un garage ! Les gloutons prendront le plan et feront tout le circuit d'une traite. Il est pourtant plus intéressant de flâner et de rentrer au hasard dans des lieux insoupçonnés. Pour marquer encore un peu plus ce lien avec la photo, il a été crée en 1982 l'École Nationale Supérieure de la Photographie, qui bénéficie depuis 2019 d'un bâtiment très moderne. Pour les amateurs de passage dans le coin hors saison, il existe également plusieurs galeries permanentes d'artistes photographes.

Arles et ses 2500 ans d'histoire est notamment le berceau de Constance d'Arles (986 - 1032), fille de Guillaume Ier (comte de Provence), et future reine des Francs, ainsi que de Jeanne Calment et Christian Lacroix (entre autre). Pour faire le lien avec les étapes précédentes, van Gogh y séjournera un an et s'y coupera une oreille à cause de ses troubles psychiatriques et/ou d'une dispute avec Gauguin.

Le monde en petit

Sunday, 21 September 2025
|
Écrit par
Grégory Soutadé

Il y a quelques années (2016) sortait Pokémon Go, un des premiers jeux mobile en réalité augmentée. L'objectif ? Les capturer tous ! Le succès a été fulgurant, générant plusieurs milliards de dollars de revenus. On pouvait observer sans cesse des personnes, téléphone à la main, s'amasser dans les spots les plus intéressants pour chasser du pokémon. Aujourd'hui, l'inverse se produit : c'est le téléphone portable capture toute notre attention. Dès qu'il y a un temps "mort", c'est à dire qui ne génère pas de stimulation intellectuelle, il est dégainé et nous accroche. Même en marchant, même en mangeant. Le concept de notifications, de micros services, de défilement continu ainsi que la connexion permanente à haut débit sont le cœur de ce système.

Mais le téléphone intelligent est également un appareil qui détrône tous ses concurrents : appareil photo, GPS, télévision, radio, montre, ordinateur... Rien de neuf me direz-vous. C'est exact, il y a déjà beaucoup d'études sur les dangers de la connexion permanente vis à vis de l'activité cognitive et surtout de l'apprentissage (plus encore avec l'arrivée de l'intelligence artificielle). Néanmoins, il existe un point moins défriché : la taille des écrans !

En tant que créateur de contenu auteur, j'ai un site web (avec un blog extraordinaire). Pour répondre aux usages "modernes", j'ai implémenté dans le CSS une interface adaptée aux petits écrans (-> téléphones), avec en prime un mode sombre ! Nous n'épiloguerons pas sur mes qualités de graphiste... Malgré mes efforts de programmation et la volonté d'écrire du texte aéré et découpé en plusieurs paragraphes, je trouve que le rendu est toujours trop dense pour un petit écran (lors de mes tests avec mon téléphone). Mais c'est également le cas quand je consulte des sites "professionnels" : l'ergonomie est grandement réduite, avec le minimum des fonctionnalités nécessaires. Il est également difficile d'échapper aux publicités et popups en tout genre. Le tactile ne distingue pas le clic droit du gauche, est moins précis que la souris, et le clavier y est très inconfortable.

De fait, de par leur nature réduite, la lecture d'un texte sur petit écran est donc fastidieuse. Les contenus les plus adaptés sont soit des textes très courts (micro blogging, commentaire), soit des images et des vidéos. Le problème étant que l'information que l'on peut extraire de ces supports est beaucoup moins conséquentes : l'essentiel uniquement. Fini le détail, fini les nuances, fini les explications. Et même quand il s'agit d'image, le fait de les voir sur petit écran gomme les détails et réduit fortement le nombre de points d'intérêts, notre attention se focalisant sur les éléments les plus gros et les plus contrastés. Inversement : une image qui paraît bien sur un petit écran peut facilement perdre de son intérêt avec un agrandissement car, si elle n'est pas bien prise, elle sera remplie de zones inutiles ou de mauvaise qualité et aura donc un rendu global moins bon. À contrario, une image ou une vidéo peut être parfaitement adaptée à certains types de contenus (cuisine, danse...) ou venir supporter le propos (schéma, image...).

Étant donné qu'il supplante ses concurrents électroniques, le téléphone portable est quasiment en passe de devenir la seule source d'entrée (donc d'information) du grand public. Particulièrement chez les jeunes générations qui grandissent avec cet outil. Il est alors difficile de changer de paradigme quand on a déjà été "formé". J'ai pu noter un exemple assez frappant de ces nouveaux usages chez un des stagiaires ingénieur : Si le résultat de sa recherche retourne un lien vers un site classique et un autre sur une vidéo, il ira voir en priorité la vidéo, même si le support de l'information n'est pas le plus pertinent.

Alors qu'Internet peut offrir une infinité de connaissances, les formats réduits représentent clairement un appauvrissement de notre "vocabulaire". Pour faire l'analogie avec le développement intellectuel, avec un vocabulaire sommaire, il nous est impossible de formuler des idées complexes et nuancées. Si nous ne pouvons pas les exprimer, il nous est donc difficile de les concevoir, donc difficile de réfléchir à des sujets trop complexes. Bien qu'il ne soit pas très écologique, l'impression papier d'un gros dossier permettra une meilleure assimilation de ce dernier (coucou les tablettes numériques au collège...).

NB: Garmin avec sa série Bounce propose une montre connectée à destination des enfants incluant appels (vocals ?), SMS et suivi de la position, pour retarder l'heure du premier smartphone, tout en rassurant les parents.

Debian 13 (Trixie)

Sunday, 31 August 2025
|
Écrit par
Grégory Soutadé

Trixie

Après plusieurs mois de gel, permettant des tests approfondis, la dernière version stable de Debian (nom de code Trixie) est sortie le 9 août !

Qu'est-ce que Debian ? On pourrait dire basiquement qu'il s'agit d'un système d'exploitation. Pour être exact, Debian est une "distribution", c'est à dire un assemblage de tous les composants nécessaires à la réalisation d'un système d'exploitation. La nuance tient au fait que chaque composant (ou presque) est développé par des équipes indépendantes. Les composants majeurs sont le noyau (ici Linux), l'environnement de bureau (GNOME, KDE...), les gestionnaire de logiciels/paquets (apt, fait par Debian), l'installeur (fait par Debian) et tous les logiciels (dont les plus connus : LibreOffice, Chrome, Firefox, Gimp ...).

Organisé sous forme de fondation à but non lucratif, le travail des développeurs Debian consiste donc à s'assurer que tout ces composants fonctionnent ensemble. Côté grand public, on a plutôt tendance à résumer les choses en parlant de Linux, sans faire référence à la distribution. Pourtant, il y a des milliers de personnes de part le monde qui développent (la plupart du temps bénévolement) tous ces logiciels.

Debian est l'une des plus anciennes distributions Linux (première version en 1993), sortie seulement 2 ans après la première version du noyau. Il y a donc beaucoup de distributions dérivées de cette dernière. Un peu comme Android qui est développé par Google, mais qui est personnalisé par les constructeurs de téléphones. Mes serveurs fonctionnent tous grâce à Debian. C'est également le cas pour mon PC personnel depuis plus de 15 ans ! Mieux encore, je l'ai aussi installé sur un ordinateur plus ancien lors du passage forcé à Windows 10 (l'histoire se répète avec Windows 11...), alors que l'ordinateur en question n'était pas compatible. C'est donc un système utilisable par le grand public, pour peu que l'on soit un peu curieux en cas d'erreur...

Ma découverte de ce système s'est faite lors de mes études à l'IUT où nous avions accès à des serveurs sous Linux (avec une interface graphique nativement accessibles à distance grâce au serveur X \o/). Mais à l'époque, l'environnement manquait de maturité et n'était pas facilement exploitable par tout le monde. L'interface graphique primaire de GNOME était assez moche comparé à celle de Windows XP. Je me souviens également avoir partitionné un disque dur pour y installer la distribution Mandrake (il y avait plusieurs CD) quand j'étais au lycée. Ça marchotait, mais sans soutien extérieur (Internet était plus basique, avec seulement une connexion ADSL à 128kb/s et la plupart des ressources an Anglais), j'ai rapidement abandonné. Il faut dire qu'en ces temps, bien que curieux, j'étais un Windowsien convaincu.

Vint ensuite l'école d'ingénieur. Le Conseil Général nous a gracieusement prêté des ordinateurs portables pour notre cycle supérieur. Ils étaient configurés avec la distribution Fedora (et une interface KDE proche de celle de Windows). Et puis la révolution Ubuntu est arrivée, avec son bureau à effet whaou Compiz (comprendre : avec des animations 3D et de la transparence dans les fenêtres). À l'époque, Canonical (la société derrière Ubuntu), offrait gratuitement les CD d'installation ! C'est également à ce moment où j'ai commencé à m'intéresser à la couche système et aux systèmes embarqués, en gros : mon métier ! L'outillage disponible dans le monde Linux (et qui est directement hérité de l'univers UNIX, système historique de l'informatique moderne) est sans commune mesure par rapport à Windows, qui a toujours eu une approche utilisateur standard : applications métiers, bureautique, jeux. Après ce (petit) passage avec Ubuntu, j'ai migré sur Debian, pour ne plus jamais le lâcher !

Quelle plaie de voir aujourd'hui des entreprises m'imposer un Windows sur ma station de travail (et tout particulièrement la version 11 qui est une bouse sans nom). Mon ordinateur d'il y a 15 ans (un Core i5 M450 quad core) avec Linux est plus rapide que celui du travail avec son processeur Intel Core i7 vPro, ses 14 cœurs et ses 32GO de RAM. Tout ça pour simplifier le travail des administrateurs systèmes qui ne veulent pas gérer plusieurs systèmes. Pour respirer un peu, il y a bien les machines virtuelles (parfois limitées) et/ou le sous-système Linux (WSL), mais c'est loin d'être parfait (surtout quand il faut accéder aux périphériques).

La mise à jour de mon serveur avec cette nouvelle version s'est bien déroulée, mis à part la configuration mail (toujours aussi cryptique) qu'il a fallu retravailler un peu, quelques soucis PHP et Django, ainsi que le serveur de nom de domaine (bind9). J'en ai profité pour recompiler mon noyau Linux afin d'être aligné avec celui de Debian.

NB: Le serveur X a longtemps été le serveur graphique utilisé par Linux. En cas de soucis, une recherche sur internet avec ces termes ne donnait pas forcément les réponses attendues...

Dernier gif les joies du code Quand le retour de ma fonction n'a absolument rien à voir avec ce que j'attendais