2014-12-21 21 views
38

으로 System.Object 정의 또는 수입되지 않은 : 내 응용 프로그램이 난 xbuild 사용하여 컴파일 할 때 이제 http://www.mono-project.com/docs/compiling-mono/mac/컴파일 된 모노없는 기본 .NET 라이브러리 - 내가 여기에있는 가이드 다음 OS X 매버릭스에 모노를 컴파일 한

다음 오류가 발생했습니다 :

CSC: error CS0518: The predefined type `System.Object' is not defined or imported 
CSC: error CS0518: The predefined type `System.ValueType' is not defined or imported 
CSC: error CS0518: The predefined type `System.Attribute' is not defined or imported 
CSC: error CS0518: The predefined type `System.Int32' is not defined or imported 
CSC: error CS0518: The predefined type `System.UInt32' is not defined or imported 
CSC: error CS0518: The predefined type `System.Int64' is not defined or imported 
CSC: error CS0518: The predefined type `System.UInt64' is not defined or imported 
CSC: error CS0518: The predefined type `System.Single' is not defined or imported 
CSC: error CS0518: The predefined type `System.Double' is not defined or imported 
CSC: error CS0518: The predefined type `System.Char' is not defined or imported 
CSC: error CS0518: The predefined type `System.Int16' is not defined or imported 
CSC: error CS0518: The predefined type `System.Decimal' is not defined or imported 
CSC: error CS0518: The predefined type `System.Boolean' is not defined or imported 
CSC: error CS0518: The predefined type `System.SByte' is not defined or imported 
CSC: error CS0518: The predefined type `System.Byte' is not defined or imported 
CSC: error CS0518: The predefined type `System.UInt16' is not defined or imported 
CSC: error CS0518: The predefined type `System.String' is not defined or imported 
CSC: error CS0518: The predefined type `System.Enum' is not defined or imported 
CSC: error CS0518: The predefined type `System.Delegate' is not defined or imported 
CSC: error CS0518: The predefined type `System.MulticastDelegate' is not defined or imported 
CSC: error CS0518: The predefined type `System.Void' is not defined or imported 
CSC: error CS0518: The predefined type `System.Array' is not defined or imported 
CSC: error CS0518: The predefined type `System.Type' is not defined or imported 
CSC: error CS0518: The predefined type `System.Collections.IEnumerator' is not defined or imported 
CSC: error CS0518: The predefined type `System.Collections.IEnumerable' is not defined or imported 
CSC: error CS0518: The predefined type `System.IDisposable' is not defined or imported 
CSC: error CS0518: The predefined type `System.IntPtr' is not defined or imported 
CSC: error CS0518: The predefined type `System.UIntPtr' is not defined or imported 
CSC: error CS0518: The predefined type `System.RuntimeFieldHandle' is not defined or imported 
CSC: error CS0518: The predefined type `System.RuntimeTypeHandle' is not defined or imported 
CSC: error CS0518: The predefined type `System.Exception' is not defined or imported 

OS XI에서 모노 설치 프로그램을 사용했을 때 이러한 오류가 발생하지 않았습니다. 실행 메이크업의 https://gist.github.com/Geesu/149332f3f877c891d387 결과 : https://gist.github.com/Geesu/4296f7d4c6c368d6986d

+1

실제 csc 라인과 그 위치 및 빌드 된 라이브러리를 게시 할 수 있습니까? – Eris

+0

어떻게 제공하나요? CSC 라인을 찾는 방법을 모르겠습니다. 또한 편집 결과를 게시 할 수 있습니다. 도움이 될까요? – Geesu

+0

autogen.sh의 결과를 추가하고 위에 작성하십시오 – Geesu

답변

3

실행 autogen.sh의

결과

(I이 완료되지 않은 .NET 프레임 워크에 기능을 추가 해요 때문에 모노를 짓고 있어요) 나는이 문제에 대해 acros를 stumpled했다. 매버릭스 설치 프로그램을 다시 실행 한 후 업데이트를 확인하는 것을 잊었으며 Mono 및 Xamarin.Android에서 사용할 수있는 안정적인 채널 업데이트가있었습니다. 일단 내가 그들을 설치하면, 모든 것이 잘 지어졌습니다.

+2

최초의 포스터는 처음부터 컴파일되거나 Xamarin을 통해 다운로드되지 않는 모노 설치 또는 모노 설치 프로그램을 의미합니다. –

1

설치 프로그램과 집 빌드의 차이점은 설치 프로그램이 라이브러리가있는 위치를 "알고"있다는 것입니다. 컴파일 된 라이브러리는 그렇지 않습니다. 따라서 앱을 컴파일 할 때 해당 위치를 지정하지 않으면 문제가 발생합니다 (기본적으로 시스템 DLL이 없습니다). the mcs documentation을 살펴보고 경로를 지정하는 것이 좋습니다. (편집 : "- L"매개 변수를 사용해야합니다.).

+0

mcs 도구가 필요 없습니다. 모노 자체를 컴파일하려고합니다. 완료되지 않은 기능을 추가하고 있습니다. – Geesu

13

에 대한 경고와 유사한있는 경우 :

<TargetFrameworkVersion>v4.0</TargetFrameworkVersion> 
: 당신은 당신의 솔루션을 변경할 수 있습니다

xbuild /p:TargetFrameworkVersion="v4.0" 

: 당신은 명령 줄에서 .NET Framework를 대체 할 수 있습니다

/lib/mono/4.5/Microsoft.Common.targets: warning : Unable to find framework corresponding to the target framework moniker '.NETFramework,Version=v2.0'. Framework assembly references will be resolved from the GAC, which might not be the intended behavior. 

1

내 프로젝트가 컴파일을 시작할 때 줄을 제거했을 때

<NoStdLib>true</NoStdLib> 
<NoConfig>true</NoConfig> 

7

Debian unstable (Sid)에서 YouCompleteMe/OmniSharpServer를 빌드하는 동안이 문제가 발생했습니다. 무슨 일이 일어나고있는가 설치된 버전의 모노에는 v4.5.2 프레임 워크 어셈블리가 설치되어 있지 않습니다. 이는 해당 솔루션/프로젝트를 빌드 할 때 컴파일러의 기본값입니다.

해결 방법은 대상 프레임 워크 버전을 사용 가능한 버전으로 지정하거나 타겟팅 된 프레임 워크 버전을 사용 가능하게 설정하는 것입니다 (예 : 사용자 정의 컴파일 중).

고양이 Zimmermann의 답변은 적절합니다.

0

내가 논리적으로이 백업하는 방법을 알고 있지만, 시간의 몇이 문제를 해결하기 위해 노력 후하지 않습니다

Unload .net standards project 

나는 정확한 문제를 얻고

reload it again 
에 결정되지 않았기 때문에

붐 ... 그게 효과가 ... 아직도 그 뒤에 논리적 인 이유가 뭔지 모르겠다. 누군가가 그렇다면 아래에 의견을 말하십시오.