如何让IKVM在Visual Studio 2008中构建?

Epa*_*aga 7 c# ikvm compiler-errors visual-studio-2008

我从http://sourceforge.net/cvs/?group_id=69637下载了IKVM源(http://www.ikvm.net/)

现在我试图让它在Visual Studio 2008中构建并且卡住了.有没有人知道如何构建这个东西的文档,或者甚至可以给我指点?

我已经尝试打开ikvm8.sln,它会打开所有项目,但是尝试构建解决方案会导致一堆"类型或命名空间无法找到"错误.

你可能猜到我不是Visual Studio专家,而是习惯在Eclipse中使用Java.

所以,我正在寻找:逐步说明或指向如何在Visual Studio中构建IKVM的文档的链接.

如果您需要更多信息,请告诉我.谢谢你的帮助!

编辑:我也尝试过手册"MsBuild.exe IKVM8.sln",但也得到了一堆:

JniInterface.cs(30,12): error CS0234: The type or namespace name 'Internal' does not exist in the namespace 'IKVM' (a
re you missing an assembly reference?)
JniInterface.cs(175,38): error CS0246: The type or namespace name 'ClassLoaderWrapper' could not be found (are you mi
ssing a using directive or an assembly reference?)
JniInterface.cs(175,13): error CS0246: The type or namespace name 'ClassLoaderWrapper' could not be found (are you mi
ssing a using directive or an assembly reference?)
Run Code Online (Sandbox Code Playgroud)

编辑#2:我注意到了一个"ikvm.build"文件,所以我下载并运行了该文件夹,这让我更进了一步.一些事情开始成功构建,不幸的是我现在得到以下错误:

IKVM本地-win32的:

            [mkdir] Creating directory 'C:\Documents and Settings\...\My Documents\ikvm\ikvm\native\Release'.
               [cl] Compiling 2 files to 'C:\Documents and Settings\...\My Documents\ikvm\ikvm\native\Release'.
        BUILD FAILED
        C:\Documents and Settings\...\My Documents\ikvm\ikvm\native\native.build(17,10):
        'cl' failed to start.
           The system cannot find the file specified
        Total time: 0.2 seconds.
Run Code Online (Sandbox Code Playgroud)

编辑#3:确定通过放入cl.exe路径解决了问题,但仍然遇到其他错误.请注意,这只是用于在控制台上构建它,例如使用Nant.有没有办法让它在Visual Studio中构建?那会很难过......

编辑#4:下一步是安装GNU classpath 0.95,现在看起来我需要一个特定的OpenJDK安装...... Linux AMD64 ?!

             [exec] javac: file not found: ..\..\openjdk6-b12\control\build\linux-amd64\gensrc\com\sun\accessibility\internal\resources\accessibility.java
             [exec] Usage: javac <options> <source files>
             [exec] use -help for a list of possible options
Run Code Online (Sandbox Code Playgroud)

编辑#5:得到了作者的回答.见下文或http://weblog.ikvm.net/CommentView.aspx?guid=7e91b51d-6f84-4485-b61f-ea9e068a5fcf 让我们看看它是否有效......

编辑#6正如我所担心的,下一个问题是:"无法打开windows.h",请在此处查看单独的问题.

最终编辑:找到解决方案!在Lib和Path环境变量中获取Platform SDK文件夹之后,我在下面描述的解决方案对我有用.

Epa*_*aga 0

好的,刚刚收到作者的以下回复:http://weblog.ikvm.net/CommentView.aspx ?guid=7e91b51d-6f84-4485-b61f-ea9e068a5fcf

如果你想从 cvs 构建,你就得靠自己了。但是,如果您使用官方版本,则可以更轻松地从源代码构建。

如果您从 SourceForge 下载 ikvm-0.36.0.11.zip、classpath-0.95-stripped.zip 和 openjdk-b13-stripped.zip(最后两个位于 ikvm 0.36.0.5 版本下),您就拥有了所需的所有源。

现在您必须打开 Visual Studio 2008 命令提示符(即路径中包含 cl.exe 和 peverify 的命令提示符)。

然后在 ikvm 根目录中执行“nant clean”,然后执行“nant”。这应该构建整个项目。完成此操作后,您应该能够在 Visual Studio 中进行构建(仅限调试目标),但您可能需要修复项目中的程序集引用(除非您在 c:\ikvm 中安装了 ikvm)。

问候, 杰伦

编辑:确保 Platform SDK 文件夹位于 Path 和 Lib 环境变量中后,这对我有用。谢谢,杰伦!