Wince 5.0 使用 STLport void *operator new(size_t,void *)' 已经有一个主体 [英] Wince 5.0 using STLport void *operator new(size_t,void *)' already has a body
问题描述
我正在做从 windows 到 wince 的转换工作.为了使用 iostream,我选择 STLport5.2.1
.我在 vs2008 上遇到编译错误:
am files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(248) : error C2084: function 'void *operator new(size_t,void *)' already has a body>
2> D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(71) : 参见之前的'new'定义
2>d:\program files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(254) : error C2084: function 'void operator delete(void *,void *)' already有身体
2> D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(73) : 参见之前的删除"定义
2>Util1.cpp2>D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(72) : error C2084: function 'void *operator new(size_t,void *)' already has一个身体
2> d:\program files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(247) : 参见之前对'new'的定义
2>D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(74) : error C2084: function 'void operator delete(void *,void *)' 已经有一个正文
2> d:\program files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(253) : 参见之前的 'delete' 定义
你如何解决这个错误?
你必须在配置 bat 中添加字符串 --rtl-static.这对我的 wince 有效.dll 的输出名称将为 stlport-x.5.2.dll
编辑
我找到了问题所在.我能够使用/MD(DLL 多线程)构建 stlport 看看http://social.msdn.microsoft.com/Forums/en-US/vssmartdevicesnative/thread/fbae6f2a-4fc0-4610-a4b7-3d3d6bc6ac7e/
I am doing a transform work from windows to wince.
For using iostream I choose STLport5.2.1
.
I get the compile error on vs2008:
am files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(248) : error C2084: function 'void *operator new(size_t,void *)' already has a body
2> D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(71) : see previous definition of 'new'
2>d:\program files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(254) : error C2084: function 'void operator delete(void *,void *)' already has a body
2> D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(73) : see previous definition of 'delete'
2>Util1.cpp 2>D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(72) : error C2084: function 'void *operator new(size_t,void *)' already has a body
2> d:\program files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(247) : see previous definition of 'new'
2>D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(74) : error C2084: function 'void operator delete(void *,void *)' already has a body
2> d:\program files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(253) : see previous definition of 'delete'
How can you solve the error?
you have to add the string --rtl-static in the configuration bat. This worked on me on wince. The output name of dll will be stlport-x.5.2.dll
EDIT
I've found the issue. I was able to build stlport with /MD (DLL Multithread) look at http://social.msdn.microsoft.com/Forums/en-US/vssmartdevicesnative/thread/fbae6f2a-4fc0-4610-a4b7-3d3d6bc6ac7e/
这篇关于Wince 5.0 使用 STLport void *operator new(size_t,void *)' 已经有一个主体的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!