Bonjour.
J'ai une question qui me trotte dans la tête depuis quelques jours.
J'ai tenté de créer une distribution minimale (base slackware) pour équiper un vieux portable Toshiba.
La génération du noyau s'est bien passée (je dois pouvoir grignoter quelques Ko à droite et a gauche mais ce sera pour plus tard ...).
La question que je me pose concerne les bibliothèques partagé.
Je trouve que certaines prennent beaucoup de place, et je me demandais s'il étaitpossible, à partir des source d'une appli de générer des versions de bibliothèques partagées ne contenant que les portions de codes utilisés (bien entendu, il serait nécessaire d'avoir les sources des libs partagées). Existe-t-il des outils permettant de le faire? Peut-on espérer gagner beaucoup de place?
# Re: Linux et embarqué
Posté par Loic Jaquemet . Évalué à 2.
A partir de là, tu peux penser à virer des bouts de codes.
Autre solution, tu compile tout tes programmes en static, seule manière d'etre sur que les parties de ocde que tu as enlevé ne servait a rien.
Tant qu'a faire, utilise busybox.
Enfin : le but de la librairie partagée, c'est quand meme d'etre une _librairie_ dynamique. Elle permet à un nouveau programme d'utiliser les fonctions de la librairie, sans en payer la charge. Donc vouloir retirer des bouts de code, c'est un peu comme amputer une librairie dynamique de son but. Sai malle ....
Enfin 2 : si t'as des appli codées en language objet/ avec des pointeurs sur fonctions, ça va pas etre super top, car il faut _prouver_ les chemins d'exécution de tout les codes. Un peu long a faire ....
Pour résumer ... pas bête ... mais bof...
[^] # Re: Linux et embarqué
Posté par totof2000 . Évalué à 1.
Dans le cadre d'un serveur ou station de travail "standard" c'est clair que ce serait ridicule.
Par contre dans l'embarqué, certains systèmes sont dédiés à une tache précise, et seulement quelques utilitaires de base et un ou deux programmes sont nécessaires pour réaliser leur tache.
L'idée serait de regénérer les bibliothèques à partir des sources, en supprimant tout le code inutilisé par les divers programmes du système. Ainsi on garde l'avantage de la librairie dynamique (pour le code + ou - commun à l'ensembler des programmes du système), et on supprime tout ce qui n'est pas utilisé.
Je précise que pour le moment je n'ai aucun besoin particulier, c'est plus une question de curiosité qu'autre chose (pour savoir si ca existe ou non, pour éventuellement me pencher sur la question si le besoin s'en fait sentir), et comme je sais que certains contributeurs ici travaillent dans l'embarqué ...
En tout cas merci a tous pour vos réponses.
[^] # Re: Linux et embarqué
Posté par Eric . Évalué à 2.
à mon avis ca doit correspondre à ce que tu recherches
[^] # Re: Linux et embarqué
Posté par totof2000 . Évalué à 1.
# Re: Linux et embarqué
Posté par yoann_v . Évalué à 2.
Dans cet esprit de bibliothèques partagées , as tu regardé du coté de
http://www.busybox.net/(...) ? C'est une possibilité pour gagner un espace parfois précieux ...
Il y également http://tinylogin.busybox.net/(...)
et http://uclibc.org/uClibc.html(...)
bonne chance
[^] # Re: Linux et embarqué
Posté par monsieurw . Évalué à 2.
Voir par exemple : http://www.uclibc.org/dists/uwoody/(...)
De mon côté, j'ai déjà eu besoin de compiler PostgreSQL, ulogd, Prelude-IDS, la SDL avec la uClibc sans problèmes majeurs. Note : j'étais également parti des scripts de compilation des paquets d'une Slackware.
[^] # Re: Linux et embarqué
Posté par totof2000 . Évalué à 1.
# Re: Linux et embarqué
Posté par rgill . Évalué à 2.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.