首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

emule源码编译有关问题 (eMule-VeryCD-src-070418)

2012-01-11 
emule源码编译问题 (eMule-VeryCD-src-070418)1 正在编译...1 TraverseStrategy.cpp1 正在编译...1 Sc

emule源码编译问题 (eMule-VeryCD-src-070418)
1> 正在编译...
1> TraverseStrategy.cpp
1> 正在编译...
1> Scanner.cpp
1> D:\Program   Files\Microsoft   Visual   Studio   8\VC\Include\wtime.inl(37)   :   error   C2664:   “_wctime32”:   不能将参数   1   从“const   time_t   *”转换为“const   __time32_t   *”
1>                 与指向的类型无关;转换要求   reinterpret_cast、C   样式转换或函数样式转换
1> D:\Program   Files\Microsoft   Visual   Studio   8\VC\Include\wtime.inl(43)   :   error   C2664:   “errno_t   _wctime32_s(wchar_t   *,size_t,const   __time32_t   *)”:   不能将参数   3   从“const   time_t   *”转换为“const   __time32_t   *”
1>                 与指向的类型无关;转换要求   reinterpret_cast、C   样式转换或函数样式转换
1> D:\Program   Files\Microsoft   Visual   Studio   8\VC\Include\time.inl(32)   :   warning   C4244:   “参数”:   从“time_t”转换到“__time32_t”,可能丢失数据
1> D:\Program   Files\Microsoft   Visual   Studio   8\VC\Include\time.inl(32)   :   warning   C4244:   “参数”:   从“time_t”转换到“__time32_t”,可能丢失数据
1> D:\Program   Files\Microsoft   Visual   Studio   8\VC\Include\time.inl(38)   :   error   C2664:   “_ctime32”:   不能将参数   1   从“const   time_t   *”转换为“const   __time32_t   *”
1>                 与指向的类型无关;转换要求   reinterpret_cast、C   样式转换或函数样式转换
1> D:\Program   Files\Microsoft   Visual   Studio   8\VC\Include\time.inl(44)   :   error   C2664:   “errno_t   _ctime32_s(char   *,size_t,const   __time32_t   *)”:   不能将参数   3   从“const   time_t   *”转换为“const   __time32_t   *”
1>                 与指向的类型无关;转换要求   reinterpret_cast、C   样式转换或函数样式转换
1> D:\Program   Files\Microsoft   Visual   Studio   8\VC\Include\time.inl(51)   :   error   C2664:   “_gmtime32”:   不能将参数   1   从“const   time_t   *”转换为“const   __time32_t   *”
1>                 与指向的类型无关;转换要求   reinterpret_cast、C   样式转换或函数样式转换
1> D:\Program   Files\Microsoft   Visual   Studio   8\VC\Include\time.inl(57)   :   error   C2664:   “_gmtime32_s”:   不能将参数   2   从“const   time_t   *”转换为“const   __time32_t   *”
1>                 与指向的类型无关;转换要求   reinterpret_cast、C   样式转换或函数样式转换
1> D:\Program   Files\Microsoft   Visual   Studio   8\VC\Include\time.inl(64)   :   error   C2664:   “_localtime32”:   不能将参数   1   从“const   time_t   *”转换为“const   __time32_t   *”
1>                 与指向的类型无关;转换要求   reinterpret_cast、C   样式转换或函数样式转换
1> D:\Program   Files\Microsoft   Visual   Studio   8\VC\Include\time.inl(69)   :   error   C2664:   “_localtime32_s”:   不能将参数   2   从“const   time_t   *”转换为“const   __time32_t   *”
1>                 与指向的类型无关;转换要求   reinterpret_cast、C   样式转换或函数样式转换
1> D:\Program   Files\Microsoft   Visual   Studio   8\VC\Include\time.inl(81)   :   error   C2664:   “_time32”:   不能将参数   1   从“time_t   *”转换为“__time32_t   *”


1>                 与指向的类型无关;转换要求   reinterpret_cast、C   样式转换或函数样式转换
1> MfcStaticBinaryCompatible.cpp
1>   WINVER   not   defined.   Defaulting   to   0x0502   (Windows   Server   2003)


我不清楚为什么它报错报在VS的系统头文件里,time.inl不是emule的代码啊,这样就郁闷了,我不知道怎么去改它的源代码,又不知道它的源文件哪里出了问题

[解决办法]
http://www.emule-antares.net/index.php?ind=downloads&op=entry_view&iden=75
这里有emule for vc2005的编译文件
[解决办法]
Following is the definition of “time_t” in crtdefs.h.
//in crtdefs.h
#ifndef _TIME_T_DEFINED
#ifdef _USE_32BIT_TIME_T
typedef __time32_t time_t; /* time value */
#else
typedef __time64_t time_t; /* time value */
#endif
#define _TIME_T_DEFINED /* avoid multiple def 's of time_t */
#endif


//in crtdef.h
#ifndef _TIME32_T_DEFINED
typedef _W64 long __time32_t; /* 32-bit time value */
#define _TIME32_T_DEFINED
#endif

//in crtdef.h
#ifndef _TIME64_T_DEFINED
#if _INTEGRAL_MAX_BITS > = 64
typedef __int64 __time64_t; /* 64-bit time value */
#endif
#define _TIME64_T_DEFINED
#endif

热点排行