Visual Studio 2008 で IKVM をビルドするにはどうすればよいですか?
-
09-06-2019 - |
質問
IKVM ソースをダウンロードしました (http://www.ikvm.net/) から http://sourceforge.net/cvs/?group_id=69637
今、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?)
編集 #2:「ikvm.build」ファイルに気づいたので、そのフォルダーをダウンロードして nant を実行すると、さらに一歩前進しました。いくつかのことは正常にビルドされ始めますが、残念ながら次のエラーが発生します。
ikvm-native-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.
編集 #3:[OK]を置くことでそれを解決しました cl.exe
ただし、パス内ではまだ他のエラーが発生します。 これはすべてコンソール上でビルドするためのものであることに注意してください。ナントさんと。Visual Studio でビルドする方法はないのでしょうか?それは悲しいでしょう...
編集 #4:次のステップは GNU クラスパス 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
編集 #5:作者様より回答を頂きました。以下または次の URL を参照してください。 http://weblog.ikvm.net/CommentView.aspx?guid=7e91b51d-6f84-4485-b61f-ea9e068a5fcf うまくいくかどうか見てみましょう...
編集 #6 懸念していた通り、次の問題は次のとおりです。「windows.h を開けません」、別の質問を参照してください。 ここ.
最終編集:解決策が見つかりました! Lib および Path 環境変数で Platform SDK フォルダーを取得した後、以下で説明する解決策がうまくいきました。
解決 2
OK、作者から次のような返事が届きました。 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 をダウンロードすると (最後の 2 つは ikvm 0.36.0.5 リリースの下にあります)、必要なソースがすべて揃っています。
次に、Visual Studio 2008 コマンド プロンプトを開く必要があります (つまり、パスに cl.exe と peverify が含まれるもの)。
次に、ikvm ルート ディレクトリで、「nant clean」を実行し、続いて「nant」を実行します。これでプロジェクト全体が構築されるはずです。これを完了すると、Visual Studio でビルドできるようになります (デバッグ ターゲットのみ) が、プロジェクト内のアセンブリ参照を修復する必要がある場合があります (ikvm が c:\ikvm にインストールされている場合を除く)。
よろしく、ジェロエン
編集:Platform SDK フォルダーが Path および Lib 環境変数にあることを確認した後、これはうまくいきました。ありがとう、ジェローン!
他のヒント
これでうまくいくかわかりませんが、コマンドラインからビルドしてみてはいかがでしょうか。
msbuild ________
同じ問題があるため、このようにしてアプリケーションを構築したと思います。
これは、IKVM 8.1.5717.0 をソースからビルドした方法です。Visual Studio は必要ありません。
フォルダーを作成します。c:\ikvm\
上記のフォルダーを PATH に追加します (例:PATH=%PATH%;c:\ikvm を設定し、後で使用できるようにコマンド プロンプトを開いたままにします)。
ダウンロード:ikvmsrc-8.1.5717.0.zip (http://www.frijters.net/ikvmsrc-8.1.5717.0.zip)
解凍して「ikvm-8.1.5717.0」フォルダーを c:\ikvm\ に配置します。
ダウンロード:openjdk-8u45-b14-stripped.zip (http://www.frijters.net/openjdk-8u45-b14-stripped.zip)
解凍して「openjdk-8u45-b14」フォルダーを c:\ikvm\ に配置します。
ダウンロード:Java 8 SDK (http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)
インストールして場所がパスに追加されていることを確認します
ダウンロード:NAnt 0.92 (https://sourceforge.net/projects/nant/files/nant/0.92/nant-0.92-bin.zip/download)
解凍して「nant-0.92」フォルダをc:\ikvm\に配置します。
ICSharpCode.SharpZipLib.dll (http://www.icsharpcode.net/opensource/sharpziplib/Download.aspx)
「ICSharpCode.SharpZipLib.dll」を C:\ikvm\ikvm-8.1.5717.0\bin\ に配置します。
テキスト エディタで次のファイルを開き、バージョン番号を変更します。C:\ikvm\ikvm-8.1.5717.0\CommonAssemblyInfo.cs.in
先ほどのコマンド プロンプトを使用して、cd で次のコマンドを実行します。C:\ikvm\ikvm-8.1.5717.0\ikvm\
走る:.. ant-0.92\bin Ant.exe
成功した場合、すべてのバイナリは次の場所にあります。C:\ikvm\ikvm-8.1.5717.0\bin