• [^] # Re: Confusion link dynamique / appel dynamique

    Posté par . En réponse au journal Fonctionnement du linker dynamic sous linux. Évalué à 3.

    Sinon, soit le dév. a prévu le coup et tout se passe bien (on peut imaginer que le soft exprime sont mécontentement et continue avec une solution de secours ou alors se ferme). Soit le dév. a fait ça de manière un peu sale et il va manipuler un pointeur NULL, ce qui devrait aboutir tôt ou tard à un seg fault mérité :)

    J'ajoute que ce comportement a justement ca d'utile, on ne va pas se prendre un mechant coup de "unresolved symbol" parce que la lib machinchose n'est pas present. Au premier abord ca peut parraitre bizarre, mais ca permet de faire de la gestion conditionelle.

    Par exemple, on peut vouloir proposer d'utiliser au choix MySQL, PostgreSQL, SQLite, Oracle, ...
    Plutot que de linker dynamiquement (methode 2), on essaie de trouver la lib depuis le code, et si elle n'est pas la, tant pis, on passe, on n'essaie pas d'appeler. Ca permet de ne pas avoir besoin que toutes les libs, y compris celles inutiles, soient presentes a l'execution. Tres agreable avec un systeme de packages avec gestion des dependances pour eviter de se retrouver avec une demi-douzaine de libs installees dont on se fout completement.

    Par contre derriere il faut bien gerer sont truc proprement, sinon ca explose de partout.