2011-11-20 50 views
5

我下载了一个开源的C++库。问题是它是一个库对象文件(.lib)。这是如何分配的。另一方面,我试图使用它作为一个静态库使用Android NDK,这期待.a文件。自从我使用C++以来已经有好几年了,所以也许有人可以澄清这一点。不知道为什么他们分配为.lib.a文件?我怎样才能从.lib之一创建.a文件?C++静态库 - 如何从.lib创建.a文件?

+0

请添加标签适当 – sehe

+2

它是开源的,对不对?你为什么不抢源码并自己构建一个'.a'对象? –

+0

来源可用。不太熟悉make文件。 – Androider

回答

6

关注来自binutils的的ar命令:

ar rcs mylib.a mylib.lib 
+0

我在cygwin上。我有ar。 ar c mylib.a mylib.lib不产生指定的操作。 – Androider

+0

啊......如果你使用cygwin,我必须警告:.lib可能是一个“导入库”(http://en.wikipedia.org/wiki/Dynamic-link_library#Import_libraries)。但是,我用正确的开关更新了我的命令,发现内存故障 – sehe

+0

是的,现在它可以工作。 – Androider

相关问题