Build SSCLI2.0 (rotor) via Vista and VS2008

 

Today I want to build SSCLI2.0 on my machine; I know it is a hard work that might I can’t build successfully at last, but I did it after a few hours.

Here is the details step:

1.       download sscli2.0 package

http://www.microsoft.com/downloads/details.aspx?FamilyId=8C09FD61-3F26-4555-AE17-3121B4F51D4D&displaylang=en

 

2.       download activeperl package

http://downloads.activestate.com/ActivePerl/Windows/5.10/ActivePerl-5.10.0.1004-MSWin32-x86-287188.msi

 

3.       install the activeperl, then add the  C:\Perl\site\bin;C:\Perl\bin; to the PATH variable if they are not included in the PATH variable.

 

4.       Unpack the sscli2.0 package.

 

 

5.       Change file .\env.core.pl  add:

$platform_os_version=”6.0”;

before line #570

if(!$platform_os_version) {

CorFail(“Could not get platform OS version”);

}

 

6.       Change file .\win.env.bat line #37

%VS80COMNTOOLS% è%VS90COMNTOOLS% 

7.       Change file  .\clr\src\inc\warningcontrol.h line#79

Add on line:

#pragma warning(disable: 4985)              //attributes not present on previous declaration

This line is to avoid the warning 4985 to caused error.

8.       Open .\clr\src\vm\threads.cpp, save it as utf8 format.

9.       Open .\clr\src\vm\win32threadpool.cpp, save it as utf8 format.

10.   Change file .\env\bin\devdiv.def line #334 and #338:

SUBSYSTEM_WINVER=, 4.00è 5.00

SUBSYSTEM_CONVER=, 4.00è 5.00

 

11.   Create a folder  “PlatformSDK” in your MSVCDir path, copy include and lib two directories and files from your PlatformSDK or Windows SDK.

On my machine, MSVCDir is C:\Program Files\Microsoft Visual Studio 9.0\VC, I copy all files in my PlatformSDK include and lib: C:\Program Files\Microsoft Platform SDK, I install Microsoft Platform SDK for Windows Server 2003 SP1.

I don’t test and copy the files in the path: C:\Program Files\Microsoft SDKs\Windows\v6.0A, you can test it.

12.   change file .\pal\win32\make.cmd line #43

if not “%ROTOR_TOOLSET_VERSION%” ==”80” è ”90”

13.   change file .\pal\win32\rotor_pal.src line line#63 and line#64

add two lines:

#elif _MSV_VER == 1500

               #define _MSVCRT   MSVCR90D

Line #75 and #76,same:

#elif _MSV_VER == 1500

               #define _MSVCRT   MSVCR90

14.   Run “cmd” as administer;

then type cd your rotor root directory

run env.bat

run buildall.cmd

15.   When you see “BUILD Done” at last row, Congratulations!

I wrote a small test applicaition named test.cs:

Code

 

Type csc test.cs;

(It will print:

Microsoft (R) Shared Source CLI C# Compiler version 2.0.0001 for Microsoft (R) Shared Source CLI version 2.0.0

Copyright (C) Microsoft Corporation. All rights reserved.

)

Type clix test.exe.

It will print:

1*1=1

2*1=2 2*2=4

3*1=3 3*2=6 3*3=9

4*1=4 4*2=8 4*3=12 4*4=16

5*1=5 5*2=10 5*3=15 5*4=20 5*5=25

6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36

7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49

8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64

9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81

 

 

Enjoy!

posted @ 2009-05-26 12:17  DiggingDeeply  阅读(481)  评论(0编辑  收藏  举报