QT5.3.1 + mingw4.8 调用vs2008的动态库

测试环境描述
    QT5.3.1 + mingw4.8 + vs2008 

项目要求
    Qt中调用vs2008写的动态库

利用vs2008开发的动态库 VS2008DLL.dll; 导出c类型库(如果导出C++, mingw下调用,编译会不成功的)
#ifdef __cplusplus
extern "C"{
#endif
	TEST_EXPORT_EXPORT int add();
#ifdef __cplusplus
}
#endif
测试步骤
1、QT建立测试程序, 调用VS2008DLL.dll中的add()函数; 编译成功。
2、 QT建立静态库, 静态库中函数executeVS2008dll()调用VS2008DLL.dll中的add()函数; 编译成功。
    接下来,QT建立测试程序,调用Qt静态中的executeVS2008dll()函数, 这时候, 编译不成功。   
     error: undefined reference to `_imp__add' ;
3、接下来,用QT动态库去调用VS2008DLL.dll中的add()函数;编译成功。
4、QT建立测试程序,调用Qt动态库中的executeVS2008dll()函数;编译成功。

经过以上测试,  结论。
1、QT动态库封装不会改变VS2008dll函数的导出的名称。
2、QT静态库封装会改变VS2008dll函数的导出的名称。

静态库封装的调用, 编译器一定要一致。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值