• [^] # Re: libtool

    Posté par . En réponse au message compilation d'une librairie .so recalcitrante. Évalué à 2.

    De rien.

    D'ailleurs, si tu veux un peu plus d'explication sur l'option -fPIC (de mémoire) : PIC veut dire Position Independant Code, ce qui veut dire en gros que ta lib pourra etre "relocaté" (hou le sale anglicisme) n'importe où dans l'espace mémoire. Comme une lib est utilisée par plein de programmes différents ayant des "layout" de la mémoire assez différent, il faut générer du code dont les adresses puissent être modifiée, afin de placer cette lib à n'importe quel endroit dans la mémoire. D'où le "position independant" : on peut la bouger de place sans problème.
    Ce que ça change dans le code, c'est que certaines adresses ne seront maintenant plus codées "en dur", mais seront dynamiques. Forcément, tu perds un peu en perf, mais tu gagnes en flexibilité. Les programmes n'en ont pas besoin car eux, ils sont toujours au même endroit, et c'est aux libs de s'adapter.