用VS2005编译JVM

VC++2005编译器和Lib相对VC++2003做了不少改动,因此编译JVM代码的时候需要作一些修改。
先读 这个。 
一、hotspot\build\windows\makefiles\compile.make
    Line51:CPP_FLAGS=/nologo /W3 /WX
    改  为:CPP_FLAGS=/nologo /W3 /WX /D "_CRT_SECURE_NO_DEPRECATE=1" /D "_CRT_NONSTDC_NO_DEPRECATE=1"
 
    即增加_CRT_SECURE_NO_DEPRECATE 和 _CRT_NONSTDC_NO_DEPRECATE 的宏定义
 

二、hotspot\src\os\win32\vm\perfMemory_win32.cpp
    Line 546:   char* first_colon = strchr(path, ':');
    改    为:  const char* first_colon = strchr(path, ':');
 

下面的三、四点我不知道错误原因,简单地修改了代码,让编码通过。
 
三、hotspot\src\share\vm\runtime\vm_version.cpp
    Line226~Line228:
    return VMNAME " (" HOTSPOT_BUILD_VERSION ") for " OS "-" CPU
         ", built on " __DATE__ " " __TIME__
         " by " XSTR(HOTSPOT_BUILD_USER) " with " HOTSPOT_BUILD_COMPILER;
    出现编译错误:C4566
    原因是什么,我还不知道。我只是简单的把代码改为 return ""; 暂时让编译通过。
 
四、D:\temp\hotspot\src\share\vm\adlc\main.cpp
    Line 412~Line414:
    void *operator new( size_t size, int, const char *, int ) {
     return ::operator new( size );
    }
    出现编译错误:C2084
    原因是什么我也不知道,我把这三行代码注释掉,暂时让编译通过。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值