2011-12-26 6 views
2

, 응용 프로그램은Android app 용 Mono를 실행하려고 할 때 누락 된 mscorelib.dll 오류를 해결하려면 어떻게해야합니까? 컴파일 및 시뮬레이터에 안드로이드 용으로 개발 된 응용 프로그램을 실행할 때 MonoDevelop에서

E/mono ( 225): The assembly mscorlib.dll was not found or could not be loaded. 
E/mono ( 225): It should have been installed in the `/home/jon/Development/xamarin/mono/BUILD/armeabi/install/lib/mono/2.0/mscorlib.dll' directory. 

내가 존 아니에요 점을 명심 ... 다음 컴파일 다음 응용 프로그램 출력 시뮬레이터 즉시 충돌 그래서 나는/home/jon 경로 설정을 얻는 곳을 모른다. 비록 내가 인터넷에서 다른 유사하지만 궁극적으로 관련이없는 검색에서 그 경로를 발견했기 때문에 그것이 다른 devs 기계의 경로라고 상상한다.

mscorlib.dll이 실제로 내 컴퓨터에 있습니다. ... 여기

/Developer/MonoTouch/usr/lib/mono/2.1/

여기 ...

/Developer/MonoAndroid/usr/lib/mono/2.1/

에 위치

다양한 안드로이드 SDK 환경을 목표로 삼았습니다 (현재 2.3이고 시뮬레이터는 현재 2.3 SDK 환경에서 실행 중입니다).

저는 Mac OSx 10.7.2입니다. Android 용 MonoDevelop, Mono 및 Mono의 최신 버전 사용 또한 최신 MonoTouch도 설치되어 있으며 iPhone 응용 프로그램이 가치가있는 경우 제대로 컴파일됩니다. 나는이 문제에 대한 힌트를 찾을 수 있습니다

가장 가까운 것은 ... 여기에 내가 안드로이드 모노 모노를 다시 시도했지만 일반적으로 인정 하듯이 완전히 다시 설치하기 전에 제거 시도하지 않은 http://phonicuk.com/Forums/ViewThread.aspx?tid=401

입니다. 나는 그것이 어딘가에 있어야하지만 어디서나 찾을 수는 없다고 생각하는/home/jon 경로에 대해 파일 내에서 검색했습니다. 나는이 발견

... 궁극적으로 수정 될 것으로 보인다 것도 같은 맥락에서 일종의 없었다,하지만 몇 가지 다른 것들과 함께

Mono return error: mono mscorlib.dll was not found.

아이디어가 있으십니까?

업데이트 : 아래의 jonp 답변에있는 제안 사항에서 Mono.Android.DebugRuntime 패키지가 실제로 설치되지 않은 것처럼 보입니다. 지금까지 MonoAndroid를 다시 설치하고 MonoAndroid를 완전히 제거해 보았습니다. 패키지를 수동으로 추가 할 수있는 방법이 있는지 알아 내려고 노력하고 있습니다.

다른 업데이트 : 아직 시도하지 않은 이유는 모르겠지만 HelloWorld MonoAndroid 앱을 만들면 올바르게 작동합니다. 컴파일은 그 패키지를 위해 더 오래 걸렸고 필요한 패키지를 설정했는지 알 수 있었기 때문에 특정 솔루션에 대한 문제가있었습니다. 당신이 장치에 응용 프로그램의 디버그 빌드를 설치하면

답변

2

는 세 .apk 파일이 설치됩니다 libmonosgen-2.0.so 포함

  1. Mono.Android.DebugRuntime, mscorlib.dll을 등 API 수준에 대한 Mono.Android.dll 포함
  2. Mono.Android.Plaltform.ApiLevel_N, N.
  3. 응용 프로그램입니다.

제 생각 엔 Mono.Android.DebugRuntime 패키지가 설치되지 않았을 것입니다. 이를 확인하려면 다음을 실행 : 나는 실종 추측거야

adb shell pm list packages | grep Mono.Android 

. :-)

다음은 왜 누락 되었습니까? MonoDevelop에서 응용 프로그램을 실행하면 모든 필수 패키지가 검사되어 설치됩니다. 오히려 이상하게 보입니다. 디스크 공간이 부족합니까?

adb shell df /data 

당신은 어떻게 에뮬레이터를 출시된다? MonoDevelop 내에서 실행하는 경우 위의 패키지를 모두 설치할 수있는 충분한 여유 공간이 있어야합니다. 그러나 직접 실행하는 경우 기본값 인 /data은 64MB이며 Debug 빌드 환경을 지원하기에 충분하지 않습니다. MonoDevelop에서 시뮬레이터를 실행하고 응용 프로그램을 재-실행하거나 launch the emulator so that it has enough free space하십시오 응답에 대한

emulator -partition-size 512 -avd YOUR_AVD_NAME 
+1

감사합니다. 너는 맞다. 모노. 안드로이드가 빠져있다. 기묘한. 나는 디스크 공간이 적지 않다. (496이고 34는 사용 중이다.) monodevelop에서 에뮬레이터를 시작하고있다. 기본적으로이 Xamarin Anroid 튜토리얼을 따라 환경을 설정할 때 ... http://android.xamarin.com/Installation_for_Mac. 나도 깨달았 어. 네가 존 너는 너 아닌가? – Carter