Welcome to mirror list, hosted at ThFree Co, Russian Federation.

HOWTO - github.com/mono/ikvm-fork.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/HOWTO
blob: e9aef2fccf7c82e2a01d9b239e3957635d867745 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
IKVM.NET Build Instructions
---------------------------

This IKVM.NET source bundle requires OpenJDK 6 b22 sources (and build artifacts).

They can be downloaded from the SourceForge IKVM project, or from:

http://www.frijters.net/openjdk6-b22-stripped.zip

This file should be unzipped in the same directory as where the ikvm directory
(that contains this unzipped source bundle) lives.

Download ICSharpCode.SharpZipLib.dll (from http://www.icsharpcode.net/opensource/sharpziplib/
or from the ikvmbin-x.y.z.r.zip in the SourceForge IKVM project) and copy it to ikvm/bin.

Add the bin directory of NAnt 0.85 and JDK 1.6 to the PATH.

From the ikvm directory run "nant".

You now should have the built binaries in ikvm/bin. Note that this only builds the managed
binaries, to build the native binary see Native Build.


Native Build
------------

Windows:
Make sure you have Visual C++ 2008 installed. Open a Visual Studio 2008 Command Prompt.
From the ikvm directory run "nant native".

Linux:
Make sure you have gcc installed. From the ikvm directory run "nant native".


Additional Information
----------------------

IKVM.Runtime.dll and the various IKVM.OpenJDK.*.dll assemblies mutually depend on each other.
This is accomplished by building IKVM.Runtime.dll in two passes. The first pass defines the
methods and types that the IKVM.OpenJDK.*.dll assemblies use, but generally with an empty
method body (look for #if FIRST_PASS in the IKVM.Runtime.dll sources). The second pass is
built after the IKVM.OpenJDK.*.dll assemblies have been built.

The version numbers of the build is defined in ikvm/CommonAssemblyInfo.cs.

If you want to do a strong named build, make sure you have a key container installed named
"ikvm-key" and run the build with "nant signed".