Le ven. 8 août 2025 à 09:56, didier gaumet <[email protected]> a écrit :
> > Motivé uniquement par le désir de mettre en valeur le peu de technicité > des intervenants de cette liste en regard du puits de science que je > suis, je pose la question (bien que je connaisse, *évidemment*, la > réponse): c'est quoi (si il y en a) la/les différence(s) entre .a et .ao ? > Ces connaissances sont acquises quand on programme en C, typiquement. Les libraries xxx.so (comme Shared Object) sont trouvables dans les paquets libxxx. Quand un programme est lié à un fichier "libxxx.so" il n'a pas besoin d'être recompilé si le fichier ".so" est mis à jour (et si la mise à jour ne casse pas la compatibilité avec la version d'avant). A contrario, un fichier "libxxx.a" (comme Assembly) n'est pas partageable. On le trouve potentiellement dans un paquet libxxx-dev (mais pas toujours, comme dit précédemment). Un programme qui est compilé avec les fichiers ".a" (Assembly) d'autres librairies, va embarquer ces fichiers dans le binaire résultant. Ce n'est plus partagé. Il faut le recompiler si une des librairies doit être mise à jour. (xxx.ao ça n'existe pas, le post original écrit [ao] pour signifier "a ou o" je crois)

