Tenía un archivo de biblioteca estática. ¿Cómo puedo ver si está compilado en i386 o en la plataforma de brazo? Gracias.Cómo ver la plataforma de compilación de un archivo de biblioteca estática
Respuesta
En Unix (y similares - por ejemplo, Linux o Minix) sistemas, puede utilizar el "archivo" utilidad:
%file /lib/libc.so.7
libc.so.7: ELF 64-bit LSB shared object, x86-64, version 1 (FreeBSD), dynamically linked, stripped
(el %
indica el intérprete de comandos y no es parte del comando)
En cuanto a Windows, no sé si ya hay un comando incorporado, pero si no, puede encontrar la utilidad en esta página: http://gnuwin32.sourceforge.net/packages.html (el paquete file
está a aproximadamente 1/3 de la página) .
EDIT: Para las bibliotecas estáticas (.a
archivos), primero tiene que extraer de ellos y comprobar un archivo .o
:
%cp /usr/lib/libchipmunk.a .
%ar -x libchipmunk.a
%file *.o
chipmunk.c.o: ELF 64-bit LSB relocatable, x86-64, version 1 (FreeBSD), not stripped
<snip>
ADVERTENCIA:ar -x ...
contaminará el directorio local, por lo Asegúrese de copiar los archivos en otro lugar (digamos /tmp/something
) primero!
Estoy seguro de que hay una manera de verificar directamente estos archivos, ¡pero esto funciona igual de bien!
El comando de archivo no proporciona tanta información para un estático biblioteca (archivos .a). –
Delante de usted :) –
file
le brinda información general acerca de la plataforma en Linux.
p. Ej.
file /usr/lib/libfoo.a
o para un binario ejecutable
file `which foo`
Uso file
o objdump
. file
siempre funciona pero objdump
le dará información más detallada acerca de bibliotecas y archivos y ejecutables.
- 1. compilación de la biblioteca estática de C++ para la plataforma de Windows de 64 bits utilizando VS2008
- 2. Biblioteca estática de compilación cruzada de Linux para Windows
- 3. Compilación de una biblioteca estática para iOS que usa OpenMP
- 4. De la biblioteca estática MinGW (.a) a la biblioteca estática de Visual Studio (.lib)
- 5. Contenido de una biblioteca estática
- 6. Asterisk plataforma cruzada compilación
- 7. Registro de objetos en la biblioteca estática
- 8. .NET links, biblioteca específica de la plataforma
- 9. ¿Cómo almacenar un número de versión en una biblioteca estática?
- 10. Compilación de FreeType a DLL (a diferencia de la biblioteca estática)
- 11. Cómo ver los contenidos de la biblioteca de Windows (* .lib)
- 12. Cómo crear un archivo de objeto compartido desde la biblioteca estática
- 13. ¿Cómo crear una biblioteca estática de un proyecto de Xcode?
- 14. Cómo escribir/depurar Android.mk para la biblioteca estática de NDK?
- 15. Cómo usar la función de la biblioteca estática si no tengo el archivo de encabezado
- 16. Incluye biblioteca estática preconstruida en el sistema de compilación de Android
- 17. Biblioteca estática y Biblioteca dinámica: Confusión
- 18. Lectura del archivo .pch en la biblioteca estática
- 19. cargar dinámicamente la biblioteca estática?
- 20. Biblioteca estática de construcción de iPhone para armv6 y armv7 que incluye otra biblioteca estática
- 21. El uso de la biblioteca estática y productos de paquete de Xcode 4 subproyecto
- 22. Cómo forzar a los símbolos de una biblioteca estática a ser incluidos en una compilación de biblioteca compartida?
- 23. En ClearCase, ¿cómo puedo ver la versión anterior de un archivo en una vista estática, desde la línea de comandos?
- 24. Vinculación estática selectiva de funciones de biblioteca en biblioteca compartida
- 25. Extracción de nombres de función de la biblioteca estática
- 26. impedir la importación de la función de la biblioteca estática
- 27. Compilación de una biblioteca de impulso específica
- 28. Cómo forzar la inclusión de un archivo de objeto en una biblioteca estática cuando se establece un enlace en ejecutable?
- 29. ¿Qué hay dentro del archivo .lib de la biblioteca estática, biblioteca dinámica enlazada estáticamente y biblioteca dinámica vinculada dinámicamente?
- 30. ¿Hay una biblioteca de plataforma cruzada C++?
se le olvidó mencionar que sistema operativo que tenga. –
mac os ... lo siento – seanxiaoxiao
Vea mi respuesta entonces - desconocido para muchos (aunque usted, como programador, probablemente lo sepa) Mac OS X es un completo sistema Unix :) –