error C2371: “INT32”: 重定义;不同的基类型

您所在的位置:网站首页 c语言重定义不同的基类型 error C2371: “INT32”: 重定义;不同的基类型

error C2371: “INT32”: 重定义;不同的基类型

2024-06-17 02:13| 来源: 网络整理| 查看: 265

转载原文博客:http://blog.csdn.net/u013078356/article/details/54999361

最近在windows上编译dlib-19.1静态库文件的时候,发现系统自带的basetsd.h文件和 Anaconda2中jmorecfg.h头文件中的定义相冲突。

产生问题:basetsd.h(72): error C2371: “INT32”: 重定义;不同的基类型

修改方法1:

将jmorecfg中定义的typedef long INT32 改成typedef long INT32B即可。

修改方法2:

仔细阅读jmorecfg.h冲突代码可以发现,如果已经定义了_BASETSD_H等就不会再定义typedef long INT32,所以可以在这一段代码的前面提前包含进去:即引入#include

打开jmorecfg.h程序增加一行即可:

#include       //需要我们自己添加上 #ifndef XMD_H /* X11/xmd.h correctly defines INT32 */ #ifndef _BASETSD_H_ /* Microsoft defines it in basetsd.h */ #ifndef _BASETSD_H /* MinGW is slightly different */ #ifndef QGLOBAL_H /* Qt defines it in qglobal.h */ typedef long INT32; #endif #endif

#endif #endif

这里建议第二种修改方法。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3