Existe-t-il une commande dans linux pour savoir si une bibliothèque a été construite en mode 32 ou 64 bits?

gcc 4.5.1 Fedora 14 Linux 

J’ai cette bibliothèque statique qui a été construite à partir d’un programmeur précédent. Cependant, il a quitté l’entreprise et nous n’avons pas le code source. Tout ce que nous avons, ce sont les fichiers d’en-tête *.h et la bibliothèque statique libnet.a .

Lorsque je suis, essayez de lier cela avec notre application. Je reçois une incompatible linker error . Je pense que le problème est que la bibliothèque statique a été construite sur une machine 32 bits. Et j’essaie de relier en utilisant une machine 64 bits. Je pourrais comstackr mon application en utilisant le cflag -m32. Cependant, je veux juste savoir s’il y a une commande qui me donnera si la bibliothèque statique a été construite en mode 32 ou 64 bits?

Merci beaucoup pour toutes suggestions,

Une archive .a n’est qu’une collection d’objects, alors pourquoi pas:

 ar x libnet.a file someobj.o 

Cela vous donnera une réponse comme:

 someobj.o: ELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), not ssortingpped 

Juste courir le file dessus pourrait être suffisant?

L’ouvrir dans un éditeur hexadécimal avec une vue ascii peut révéler des indices