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-네이티브-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:좋아, 넣어서 해결됐어 cl.exe
경로에서 여전히 다른 오류가 발생합니다. 이는 모두 콘솔에서 빌드하기 위한 것입니다.낸트와 함께.Visual Studio에서 빌드할 수 있는 방법이 없나요?그거 슬플텐데...
편집 #4:다음 단계는 GNU 클래스 경로 0.95를 설치하는 것이었고 이제 특정 OpenJDK 설치가 필요한 것 같습니다...리눅스 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:작가님으로부터 답변을 받았습니다.아래 또는 다음을 참조하세요. http://weblog.ikvm.net/CommentView.aspx?guid=7e91b51d-6f84-4485-b61f-ea9e068a5fcf 작동하는지 봅시다...
편집 #6 우려했던 대로 다음 문제는 다음과 같습니다."windows.h를 열 수 없습니다", 별도 질문 참조 여기.
최종 편집:해결책을 찾았습니다! Lib 및 Path 환경 변수에서 Platform SDK 폴더를 가져온 후 아래에 설명된 솔루션이 저에게 효과적이었습니다.
해결책 2
좋습니다. 방금 작성자로부터 다음과 같은 답변을 받았습니다. 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이 설치되어 있지 않은 경우).
안부, Jeroen
편집하다:Platform SDK 폴더가 Path 및 Lib 환경 변수에 있는지 확인한 후 이것이 효과가 있었습니다.고마워요, 제로엔!
다른 팁
이것이 당신에게 도움이 될지는 모르겠지만 명령줄에서 빌드해 볼 수 있습니까?
MS빌드 ________
나는 그것이 같은 문제로 인해 응용 프로그램을 구축한 방법이라고 생각합니다.
이것이 소스에서 IKVM 8.1.5717.0을 빌드한 방법입니다.비주얼 스튜디오는 필요하지 않습니다.
폴더를 생성합니다: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\에 넣습니다.
다운로드:자바 8 SDK(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)
설치하고 위치가 경로에 추가되었는지 확인하세요.
다운로드:낸트 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)
C:\ikvm\ikvm-8.1.5717.0\bin\에 "ICSharpCode.SharpZipLib.dll"을 배치합니다.
텍스트 편집기에서 다음 파일을 열고 버전 번호를 변경합니다.C:\ikvm\ikvm-8.1.5717.0\CommonAssemblyInfo.cs.in
이전 명령 프롬프트를 사용하여 다음을 수행합니다.C:\ikvm\ikvm-8.1.5717.0\ikvm\
달리다:.. ant-0.92\bin Ant.exe
성공하면 모든 바이너리가 다음 위치에 있게 됩니다.C:\ikvm\ikvm-8.1.5717.0\bin