Forum Linux.général Faut-il se mefiez des distribs Linux !

Posté par  .
Étiquettes :
0
6
août
2005
Bonjour,

désolé pour le titre un rien accrocheur, mais j'aimerai lancé une petite réflexion sur la sensibilité des distributions linux.

J'ai un binaire compilé sur une RH8, tournant sur une RH9 (et recompilé dessus). Il tourne aussi sur FC3 et Mandrake 10.1. Par contre le même binaire, me sort un segfault (sur un trafficotage mémoire) sur suse9.3, Mandriva LE2005, FC4, Ubuntu 5.04 et (c'est le comble) Red Hat Entreprise 3 !!!!

C'est pas que je veux mettre en doute la qualité de certaines distribs, mais je me pose des questions sur ce qu'il y a à l'intérieur.
Comment une telle chose peut-elle arriver ? Il faut forcément, à mon avis, sérieusement modifié le coeur du système avec des packages plus ou moins compatible avec les précédents.

Ou bien je me gourre complètement, et les nouvelles distribs ont un "truc" incorporé qui est beaucoup plus sévere sur la gestion mémoire.

Merci d'avance de m'éclairer sur cette question.
  • # piste 1

    Posté par  (site web personnel) . Évalué à 10.

    Ca peut venir d'un changement de version de lib (typiquement libc5 a libc6 par ex)
    ou effectivement venir de restrictions plus sévères dans les actions permises au binaires (genre debordement de pile, toussa ...)

    PS : avant de terminer un mot en é, er, ai etc, remplace par un verbe du troisième groupe comme vendre par exemple : Faut-il se (vendez|vendai|vendre ?) des distribs Linux. Et puis les questions se terminent par un ? et non un !
  • # ...

    Posté par  (site web personnel) . Évalué à 5.

    lorsqu'un programme est compilé rien ne peux t'assurer que ce même programme va fonctionner sur un autre système, c'est la base de la compilation.

    c'est exactement pour cette raison que les distribution ont chacune un systeme de paquets : pour etre sur que lorsque t'installles un nouveau programme, celui ci fonctionne correctement avec les librairies du systeme ! chaque distribution est libre d'utiliser les librairies qu'elle souhaite, et chaque nouvelle version des distributions ne sort pas en meme temps, les versions des librairies d'une distribution à une autre sont donc completement différentes.

    si tu veux augmenter la compatibilité d'un binaire, tu peux toujours à priori le recompiler en incluant le maximum de librairie sensibles directement dans l'exécutable (je suis pas un pro des options de compilations mais ça devrait etre possible), mais au final t'auras un exécutable plus gros.
  • # Re : Faut-il se mefiez des distribs Linux !

    Posté par  . Évalué à 4.

    Comme dis plus haut, si tu veux un binaire transportable tu compiles en static afin d'inclure les bibliothèques étrangères utilisées et en théorie il ne devrait pas y avoir trop de problèmes.
    Sinon, ton prog qui aura été compilé sur RH8 (pour reprendre ton exemple) va utiliser une lib trucchouette présente sur le système par exemple. Tu vas utiliser la fonction foo de cette bibliothèque qui nécessite 2 paramètres, pas de problème.
    La où ça coinçe, c'est que tu vas utiliser ce prog sur RH9 avec bien entendu la lib foo installée.
    Mais pas de bol, la lib foo a changé depuis, désormais la fonction que tu utilises prend 3 paramètres.
    Facheux n'est ce pas ?
  • # Faute de tueur !

    Posté par  . Évalué à 3.

    Faut-il se mefiez des distribs Linux !
    puis
    désolé pour le titre un rien accrocheur !

    Y a pas à dire, c'est excellent ! :-)
  • # Faut il se mefier des questions dans les forums linuxfr ?

    Posté par  . Évalué à 6.

    >C'est pas que je veux mettre en doute la qualité de certaines distribs, mais je me
    >pose des questions sur ce qu'il y a à l'intérieur.
    >Comment une telle chose peut-elle arriver ? Il faut forcément, à mon avis,
    >sérieusement modifié le coeur du système avec des packages plus ou moins
    >compatible avec les précédents.

    >Ou bien je me gourre complètement, et les nouvelles distribs ont un "truc"
    >incorporé qui est beaucoup plus sévere sur la gestion mémoire.

    >Merci d'avance de m'éclairer sur cette question.



    C'est pas que je veux mettre en doute la qualité de certaines de tes connaissances concernant le fonctionnement d'un logiciel, mais tu crois quand meme pas que la portablitité d'un binaire d'une distro à une autre dépend de la qualité de la distro ?

    Un logiciel dépend pour son fonctionnement d'autres composants ( bibliotheques, présence d'autres executables, appels systemes ). Ces composants peuvent exister ou pas d'une distro à une autre. De plus lorsqu'un composant evolue, sa facon d'etre utilisé peut etre modifiée elle aussi ( le kernel en est un bon exemple : de temps en temps certains trucs sautent et empeche de faire fonctionner certains binaires qui en dépendent ).
    Il y'a donc quelques regles de bon sens qui découlent de ce constat :
    - avoir un binaire static réduit les chances d'etre embetté si on doit utiliser ce binaire sur une autre distro
    - avoir les sources est le moyen le plus sur de garantir la portabilité d'un binaire d'une distro à une autre ( et d'une arch à une autre, et d'un OS à un autre )
    • [^] # Re: Faut il se mefier des questions dans les forums linuxfr ?

      Posté par  . Évalué à 1.

      D'abord je vous prie d'accepter toutes mes excuses pour les fautes d'orthographes. Mais malheureusement il est un peu tard pour que je puisse y remédier définitivement (surtout pour les accents). Je vais toutefois essayer de m'appliquer.

      Ensuite, ce que j'attends quand même de Linux (en général) c'est une certaine stabilité dans la continuité. Si les développeurs décident de changer le comportement des libs, alors pourquoi ne pas en créer une nouvelle ? Si j'ai 10 distribs différentes, je n'ai pas forcement envie ni de recompiler pour chaque distrib, ni d'avoir des binaires de plus de 40 Mo en static (surtout que j'ai pas que des Linux à gérer). Je sais très bien que la solution quasi-idéale serait le static. Mais si on pouvait s'en passer ce serait encore mieux.

      Ce que je voulais surtout dire, c'est que je regrette quand même l'absence de compatibilité. Et non ! Je ne remets pas en doute la qualité des distribs.

      Par contre je suis d'accord avec toi lorsque tu parles d'une évolution du système central. Et peut-être suis-je justement dans ce cas. Car je n'impute pas mes problèmes aux libs. C'est pour ça que je parlais de manipulations sur la mémoire.

      Ce que j'attendais surtout comme réponses c'était un retour d'expériences sur la portabilité entre différentes distribs Linux.

      Merci quand même.

Suivre le flux des commentaires

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