2016-03-16 1 views
0

J'essaie d'exécuter un projet C++ qui dépend également de PBC (https://crypto.stanford.edu/pbc/) et de GMP (https://gmplib.org). J'ai installé PBC et GMP dans le répertoire/usr/local /. Pour ce projet, j'ai ajouté les bibliothèques PBC (pbc-0.5.14) et GMP (gmp-6.1.0) manuellement (j'ai glissé ces bibliothèques dans mon projet).Liaison de problèmes avec GMP et Xcode

Quand j'ajoute les drapeaux -lgmp -lgmpxx dans d'autres drapeaux de liens dans Xcode (version 7.2) Je suis arrivé ceci:

ld: library not found for -lgmp 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Quand je construis (et propre) sans autres drapeaux linker j'ai obtenu:

Undefined symbols for architecture x86_64: 
    "_pairing_clear", referenced from: 
     Member::~Member() in member.o 
     Manager::~Manager() in manager.o 
     Verifier::~Verifier() in verifier.o 
    "_pairing_init_set_str", referenced from: 
     Member::Member() in member.o 
     Manager::Manager() in manager.o 
     Verifier::Verifier() in verifier.o 
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Est-ce que quelqu'un savait comment résoudre ce problème ou des suggestions? Merci.

Répondre

0

Sur mon Ubuntu 15.10 (64), libgmp installé dans

> /usr/lib/i386-linux-gnu/libgmp.so.10 
> /usr/lib/i386-linux-gnu/libgmp.so.10.2.0 
> /usr/lib/i386-linux-gnu/openssl-1.0.0/engines/libgmp.so 
> /usr/lib/x86_64-linux-gnu/libgmp.a /usr/lib/x86_64-linux-gnu/libgmp.so 
> /usr/lib/x86_64-linux-gnu/libgmp.so.10 
> /usr/lib/x86_64-linux-gnu/libgmp.so.10.2.0 
> /usr/lib/x86_64-linux-gnu/libgmpxx.a 
> /usr/lib/x86_64-linux-gnu/libgmpxx.so 
> /usr/lib/x86_64-linux-gnu/libgmpxx.so.4 
> /usr/lib/x86_64-linux-gnu/libgmpxx.so.4.4.0 

J'ai trouvé cette commande à l'aide "localiser libgmp". (localisez les recherches mises à jour par updateb.)

Vous dites que vous l'avez 'installé' localement? J'ai couru installer sans aucune option. Peut-être que votre éditeur de liens n'est pas informé de l'endroit où chercher les bibliothèques? Peut-être ajouter un "-L 'emplacement local" "?

Espérons que cela aide ...