2011-03-02 2 views
1

J'essaie de mettre à jour une ancienne application X11/Motif pour utiliser des objets et des bibliothèques modernes. J'ai utilisé ldd pour obtenir une liste de tous les objets partagés utilisés, mais j'essaie de comprendre quelles fonctions sont en particulier liées à ces bibliothèques afin que je puisse supprimer les fonctions obsolètes. Des idées? MerciComment savoir quelles fonctions sont obsolètes

En particulier (mais sans s'y limiter), libXp.so.6

Répondre

1

Pour voir quelles fonctions sont libXp.so.6, essayez:

nm -D --defined-only /usr/lib/libXp.so.6 

Maintenant, vous pouvez voir qu'ils tout commence par Xp, à l'exception de quelques uns étranges qui ne sont probablement pas destinés à être dans l'API publique.

Votre approche la plus simple est probablement d'utiliser simplement grep pour rechercher Xp, ou une expression régulière comme Xp[A-Za-z]+, dans le code source.

+0

Je vais essayer, mais je sais que je n'utilise aucune fonction qui commence par Xp. Je pense qu'une autre bibliothèque que je suis en train de lier utilise quand même. Cela semble être un champ de mines. – steveo225

+0

Cela a aidé à comprendre exactement ce qui était utilisé. En combinaison avec ldd, j'ai pu déterminer quelles fonctions et quelles dépendances étaient nécessaires et pourquoi. Maintenant je dois juste les enlever ... Merci! – steveo225

Questions connexes