Jeudi 12 janvier 2006, 17:21:30 CET, François Boisson a écrit : > >[...] > > #dpkg -l | grep libmodplug0 > > ic libmodplug0 0.7-4 > > shared libraries for mod music based on > > ModP > > ii libmodplug0c2 0.7-5 > > shared libraries for mod music based on > > ModP > > > > Est-ce que c'est possible de spécifier à apt que le > > paquet qui manque à un autre nom ? > > >[...] > C'est le paquet stable ou la dépendance avec libmodplug0 a été remplacé > par une dépendance avec libmodplug0c2. Voilà voilà... > > Hope it works...
On peut espérer mais j'ai des doutes : le « c2 » signifie que la bibliothèque utilise la nouvelle version de l'ABI C++. L'ABI définit la façon dont les programmes communiquent (comment sont codées les fonctions, les appels, les structures, etc.). Pour prendre un exemple simple, quand un programme demande à une bibliothèque une fonction, il la demande sous une forme codée. Disons qu'il code truc_I:I une fonction « truc » qui prend un int et renvoie un int. Le changement d'ABI signifie un changement de ce codage : truc_I:I devient truc(I)=I. Alors là évidemment, le programme qui demande truc_I:I ne la trouvera jamais dans la nouvelle version de la bibliothèque. (Mon exemple est très simpliste, le changement d'ABI C++ porte sur d'autres codages mais celui des noms de fonctions est assez simple à comprendre.) Donc, je pense que le paquet va s'installer mais que le programme ne fonctionnera pas ou aura de gros problèmes (modification des positions des champs dans une structure p.ex.). -- Sylvain Sauvage

