Le besoin est beaucoup plus simple que ça. Le programme en C (ou autre) est livré compilé pour les deux architectures possibles x86_64 et aarch64. C’est essentiellement du contrôle de flot autour de fonctions/commandes disponibles après installation (automatisée) via apt.
Le problème rencontré est que l’utilisateur ne veut aucune intervention extérieure et n’est pas compétent pour configurer parfaitement un hôte debian afin d’exécuter tout logiciel fourni. Je dois donc travailler à tâtons. Typiquement, on commence par supprimer la référence au CDROM d’installation dans /etc/apt/sources.list . Etc. Cf. https://www.linuxtechi.com/things-to-do-after-installing-debian-11/ Cf. https://averagelinuxuser.com/debian-11-after-install/ La question est donc : quelle est la liste la plus complète possible des tâches à effectuer sur un hôte debian tout neuf pour qu’il puisse exécuter tout programme compilé (exploitant en l’occurrence libc : super classique, toujours installé, sauf erreur…). PS : Je suis d’ailleurs étonné que l’installateur debian ne propose pas de prendre ces décisions pour parachever l’installation. Comment remonter ce besoin à l’équipe debian ? merci. > Le 18 mai 2023 à 08:04, Basile Starynkevitch <[email protected]> a > écrit : > > >> On 5/17/23 21:58, RogerT wrote: >> Ce n’est pas un peu démesuré ? >> Je ne connais pas Ansible en pratique. >> Peut-être est-ce très simple… >> >> Il me semble qu’il s’agit juste de lister toutes les tâches que l’on fait >> tous quand on crée un hôte de zéro. >> C’est tellement habituel qu’on ne sait plus exactement tout ce qu’on fait. >> Il y a aussi ce système debian qui permet d’automatiser l’installation d’un >> hôte. >> Ex : >> https://debian-handbook.info/browse/fr-FR/stable/sect.automated-installation.html >> >> >> >>>> Le 17 mai 2023 à 13:52, Sébastien Dinot <[email protected]> a écrit : >>> >>> Bonjour, >>> >>> RogerT a écrit : >>>> Existe-t-il un outil en CLI pour tester que l’hôte mis à disposition >>>> par l’utilisateur est correctement configuré ? >>> >>> De nos jours, j'aurais tendance à répondre « Ansible » : >>> >>> https://www.ansible.com/ > > > > Si j'ai bien compris la question, c'est théoriquement impossible de manière > statique. A cause du théorème de Rice: > > https://fr.wikipedia.org/wiki/Th%C3%A9or%C3%A8me_de_Rice > > et en lien avec le problème de l'arrêt: > https://fr.wikipedia.org/wiki/Probl%C3%A8me_de_l%27arr%C3%AAt > > Et en pratique, ça demeure souvent impossible parce qu'un (ou le) logiciel > fourni (considéré) peut: > > embarquer un interprète comme Lua http://www.lua.org/ ou RefPerSys > http://refpersys.org/ ou GNU guile https://www.gnu.org/software/guile/ ou > Python https://python.org/ et https://docs.python.org/3/extending/index.html > > > générer du code ou des scripts (l'exemple classique c'est GNU emacs ou > PostGreSQL) qui dépendent des données futures de ce logiciel en utilisant > https://gcc.gnu.org/onlinedocs/jit/ ou https://asmjit.com/ > > utiliser et charger des greffons fourni par l'utilisateur (et qui peuvent > manquer à l'installation), (voir par exemple > https://arxiv.org/pdf/1109.0779.pdf et > https://gcc.gnu.org/onlinedocs/gccint/Plugins.html ...) - ce que savent faire > GNU emacs, firefox, geany, des variantes de vim, etc... > > générer à l'exécution, en fonction des données, du code temporaire (qui > aurait besoin d'autres logiciels installés) dans un greffon chargé par > https://man7.org/linux/man-pages/man3/dlopen.3.html > > générer à l'exécution, en fonction des données, du code machine utilisant > d'autres logiciels. Les exemples connus sont http://sbcl.org/ ou le logiciel > CAIA de Jacques Pitrat (voir https://fr.wikipedia.org/wiki/Jacques_Pitrat ou > le code C -autogénéré- en https://github.com/bstarynk/caia-pitrat ; Jacques > Pitrat a écrit plusieurs livres expliquant cette approche, disponibles à la > bibliothèque MIR de l'université Paris 6 Jussieu. Voir aussi les exposés en > https://afia.asso.fr/journee-hommage-j-pitrat/ > > > Il me semble donc qu'il faut restreindre la question posée, et dans le cas > particulier où le logiciel fourni est codé en C, envisager (c'est complexe et > demande des efforts et du temps) d'en analyser le code source avec l'outil > Frama-C disponible en https://frama-c.com/ > > C'est l'une des raisons pour laquelle le packaging Debian demeure un art > difficile. > > > Librement > > > -- > Basile Starynkevitch <[email protected]> > (only mine opinions / les opinions sont miennes uniquement) > 92340 Bourg-la-Reine, France > web page: starynkevitch.net/Basile/ >

