2011-11-20 20 views
5

He descargado una biblioteca C++ de código abierto. El problema es que es un archivo de objeto de biblioteca (.lib). Así es como se distribuye. Por otro lado, estoy tratando de usarlo como una biblioteca estática usando Android NDK y esto espera un archivo .a. Han pasado años desde que utilicé C++ así que quizás alguien podría aclarar esto. ¿No está seguro de por qué se distribuyen como .lib frente al archivo .a? ¿Y cómo puedo crear el archivo .a del .lib?Biblioteca estática de C++: ¿cómo crear un archivo .a desde .lib?

+0

favor añadir etiquetas en su caso – sehe

+2

es de código abierto, ¿verdad? ¿Por qué no agarras la fuente y construyes un objeto '.a' tú mismo? –

+0

la fuente está disponible. no muy familiarizado con hacer archivos. – Androider

Respuesta

6

Mira el comando ar de binutils:

ar rcs mylib.a mylib.lib 
+0

Estoy en cygwin. Tengo ar. ar c mylib.a mylib.lib no produce ninguna operación especificada. – Androider

+0

ah ... si estás en cygwin, debo advertir: la .lib podría ser una "biblioteca de importación" (http://en.wikipedia.org/wiki/Dynamic-link_library#Import_libraries). Sin embargo, he actualizado mi comando con los interruptores correctos, sry para la falla de memoria – sehe

+0

sí, ahora funciona. – Androider

Cuestiones relacionadas