Comment puis-je lien un .o fichier à l'aide de g++
Je suis en train d'utiliser g++ pour compiler un .cc fichier, et j'en ai besoin pour un lien .o fichier.
J'ai donc essayé:
$g++ -o client -I../ipc -L../messages.o client.cc
/usr/bin/ld: error: ../messages.o: can not read directory: Not a directory
Et j'ai essayé:
$g++ -o client -I../ipc -l../messages.o client.cc
/usr/bin/ld: error: cannot find -l../messages.pb.o
$$ ls -l ../messages.o
-rw-r--r-- 1 hap497 hap497 227936 2010-02-03 22:32 ../messages.o
Pouvez-vous svp me dire comment faire un lien dans un .o fichier?
Merci.
OriginalL'auteur n179911 | 2010-02-04
Vous devez vous connecter pour publier un commentaire.
Je vous remercie. J'ai essayé '$g++ -o client -I../ipc client.cc ../messages.o", Mais il s'avère messages.o le besoin libprotobuf.une bibliothèque. J'ai donc essayé " g++ -o client -I../ipc client.cc -l/usr/local/lib/libprotobuf.a-lpthread ../messages.o; Et je reçois toujours '/usr/bin/ld: ../messages.o: dans la fonction ipc::protobuf_AssignDesc_messages_2eproto():ipc/messages.pb.cc:33: erreur: undefined reference to 'google::protobuf::DescriptorPool::generated_pool()' j'apprécie pour plus d'idées?
Au lieu de
-l/usr/local/lib/libprotobuf.a
, essayez juste de-lprotobuf
./usr/local/lib
est probablement dans votre chemin d'accès par défaut; si non, ajouter avec-L/usr/local/lib
. Le-l
option ajoute le 'lib' à l'avant et".un " à la fin.Pourrait avez déjà utilisé une explication dans votre réponse, mais c'est OK, @FredLarson, il fait parfaitement.
OriginalL'auteur t0mm13b