Focus on ACE

订阅 ace-china
电子邮件:
浏览存于 groups.google.com 上的所有帖子

C++博客 首页 新随笔 联系 聚合 管理
  64 Posts :: 3 Stories :: 22 Comments :: 0 Trackbacks
 

VC6+stlport编译ACE库Release版出现的问题解决办法

  不知道有没有人遇到过,我在VC6.0+STLPORT-4.6.2的环境下编译ACE version 5.4.3的Release版本,编译器报内部错误C1001: INTERNAL COMPILER ERROR。后来在google上找了些国外的论坛,大概都是说是预编译头的问题,后来摸索了下搞定了。

  在编译的时候出现如下错误提示:

Message_Block.cpp
E:MYPERSONALSTLPORT-4.6.2STLPORTstl/type_traits.h(68) : fatal error

C1001: INTERNAL COMPILER ERROR
(compiler file ''msc1.cpp'', line 1794)
Please choose the Technical Support command on the Visual C++
Help menu, or open the Technical Support help file for more information

  这显然是编译器出了问题。然而在编译Debug版本却不会出现,说明Debug与Release版的头文件组织的结构不一样,经过反复琢磨发现如下解决办法。

  打开ACE_wrappersace目录下的Message_Block.cpp文件:

 


#include 
"ace/Log_Msg.h"
#include 
"ace/Malloc_Base.h"
#include 
"ace/Guard_T.h"
#include 
"ace/OS_NS_string.h"

//#define ACE_ENABLE_TIMEPROBES
#include "ace/Timeprobe.h"



  把包含的Log_Msg.h的头放到Guard_T.h后面,就ok了。还有问题的话,再往下调整。

posted on 2006-04-25 09:32 Stone Jiang 阅读(1944) 评论(0)  编辑 收藏 引用 所属分类: ACE

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理