有一个库的源代码,怎么用mingw编译产生成lib
1个回答
展开全部
mingw编译出来的静态库后缀名为.a,编译出来的动态库的导入库后缀名为.dll.a,而在windows下后缀名为.lib的库可能是静态库也可能是动态库的导入库。
mingw编译出来的动态库的导入库可以直接在vc中直接使用,例如
#pragma comment(lib, "libx264.dll.a")
这样你就不需要生成一个.lib后缀的动态库的导入库了,网上也有如何从.dll生成.lib的方法。
如果链接了动态库的导入库libpthread.dll.a,你发布的应用程序就要带上pthread的dll。
使用静态库的好处是发布的应用程序组件模块里不需要带上相关的dll,如果要使用mingw编译出来的静态库,可以如下:
#pragma comment(lib, "libx264.a")
但是仅仅链接这么一个静态库是不够的,你还需要链接
libgcc.a
libmingwex.a
mingw编译出来的动态库的导入库可以直接在vc中直接使用,例如
#pragma comment(lib, "libx264.dll.a")
这样你就不需要生成一个.lib后缀的动态库的导入库了,网上也有如何从.dll生成.lib的方法。
如果链接了动态库的导入库libpthread.dll.a,你发布的应用程序就要带上pthread的dll。
使用静态库的好处是发布的应用程序组件模块里不需要带上相关的dll,如果要使用mingw编译出来的静态库,可以如下:
#pragma comment(lib, "libx264.a")
但是仅仅链接这么一个静态库是不够的,你还需要链接
libgcc.a
libmingwex.a
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询