How to correctly compile MonoDevelop in OSX Sierra in the current state?

DARKGuyDARKGuy CRMember ✭✭
edited May 26 in Xamarin.Mac

Hello all!

I've spent around an entire week already trying to compile MD without success in my machine. As far as I know, MD requires (and recommends) the latest MDK. I also noticed it requires "Xamarin.Mac" which has been rebranded to VS4Mac, so I installed it too, but I did things in this order... so VS4Mac didn't replace my MDK:

  1. Install VS4Mac
  2. Install MonoFramework-MDK-5.3.0.465.macos10.xamarin.universal
  3. Somehow, in /Library/Frameworks/Mono.framework/ I only get 5.3.0. I think that's good.
  4. I try to compile, it tells me I need Mono 4.0 or newer. Weird stuff, fixed by: export PKG_CONFIG_PATH="/Library/Frameworks/Mono.framework/Versions/5.3.0/lib/pkgconfig":$PKG_CONFIG_PATH
  5. After that, I get an error that mscorlib.dll is not found, so I fix it using: export MONO_PATH=/Library/Frameworks/Mono.framework/Versions/5.3.0/lib/mono/4.5/

Now I'm stuck where NuGet can't download any packages because it gets a null reference... I've tried to download NuGet 4.1 and 3.5 from official sources, removed all nuget.exe files in these locations and replaced it by a symlink, but no success:

./main/external/fsharpbinding/.nuget/NuGet.exe
./main/external/libgit2sharp/Lib/NuGet/NuGet.exe
./main/external/nuget-binary/nuget.exe

I always get this when I run make (already ./configure --profile=mac):

:~/_work/md/monodevelop$ make
Synchronizing submodule url for 'main/external/RefactoringEssentials'
Synchronizing submodule url for 'main/external/cecil'
Synchronizing submodule url for 'main/external/debugger-libs'
Synchronizing submodule url for 'main/external/guiunit'
Synchronizing submodule url for 'main/external/ikvm'
Synchronizing submodule url for 'main/external/libgit-binary'
Synchronizing submodule url for 'main/external/libgit2'
Synchronizing submodule url for 'main/external/libgit2sharp'
Synchronizing submodule url for 'main/external/macdoc'
Synchronizing submodule url for 'main/external/mdtestharness'
Synchronizing submodule url for 'main/external/mono-addins'
Synchronizing submodule url for 'main/external/mono-tools'
Synchronizing submodule url for 'main/external/monomac'
Synchronizing submodule url for 'main/external/nrefactory'
Synchronizing submodule url for 'main/external/nuget-binary'
Synchronizing submodule url for 'main/external/sharpsvn-binary'
Synchronizing submodule url for 'main/external/xwt'
Making all in external
cp -p /Library/Frameworks/Xamarin.Mac.framework/Versions/Current/lib/x86_64/full/Xamarin.Mac.dll Xamarin.Mac.dll
cp -p /Library/Frameworks/Xamarin.Mac.framework/Versions/Current/lib/x86_64/full/Xamarin.Mac.dll.mdb Xamarin.Mac.dll.mdb
cp -p /Library/Frameworks/Xamarin.Mac.framework/Versions/Current/lib/libxammac.dylib .
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C monomac/src
make[3]: Nothing to be done for `all'.
Making all in .
touch vcrevision
MSBuild auto-detection: using msbuild version '15.0' from '/Library/Frameworks/Mono.framework/Versions/Current/lib/mono/msbuild/15.0/bin/'.
WARNING: Project file /Users/aroo/_work/md/monodevelop/main/external/mono-addins/Mono.Addins/Mono.Addins.csproj cannot be found.
WARNING: Project file /Users/aroo/_work/md/monodevelop/main/external/mono-addins/Mono.Addins.CecilReflector/Mono.Addins.CecilReflector.csproj cannot be found.
WARNING: Project file /Users/aroo/_work/md/monodevelop/main/external/mono-addins/Mono.Addins.Gui/Mono.Addins.Gui.csproj cannot be found.
WARNING: Project file /Users/aroo/_work/md/monodevelop/main/external/mono-addins/Mono.Addins.Setup/Mono.Addins.Setup.csproj cannot be found.
WARNING: Project file /Users/aroo/_work/md/monodevelop/main/external/guiunit/src/framework/GuiUnit_NET_4_5.csproj cannot be found.
WARNING: Project file /Users/aroo/_work/md/monodevelop/main/external/RefactoringEssentials/RefactoringEssentials.2017/RefactoringEssentials.csproj cannot be found.
Restoring NuGet package Microsoft.TemplateEngine.Abstractions.1.0.0-beta2-20170430-208.
  GET https://api.nuget.org/v3-flatcontainer/microsoft.templateengine.abstractions/1.0.0-beta2-20170430-208/microsoft.templateengine.abstractions.1.0.0-beta2-20170430-208.nupkg
WARNING: Error downloading 'Microsoft.TemplateEngine.Abstractions.1.0.0-beta2-20170430-208' from 'https://api.nuget.org/v3-flatcontainer/microsoft.templateengine.abstractions/1.0.0-beta2-20170430-208/microsoft.templateengine.abstractions.1.0.0-beta2-20170430-208.nupkg'.
Object reference not set to an instance of an object
  GET https://api.nuget.org/v3-flatcontainer/microsoft.templateengine.abstractions/1.0.0-beta2-20170430-208/microsoft.templateengine.abstractions.1.0.0-beta2-20170430-208.nupkg
WARNING: Error downloading 'Microsoft.TemplateEngine.Abstractions.1.0.0-beta2-20170430-208' from 'https://api.nuget.org/v3-flatcontainer/microsoft.templateengine.abstractions/1.0.0-beta2-20170430-208/microsoft.templateengine.abstractions.1.0.0-beta2-20170430-208.nupkg'.
Object reference not set to an instance of an object
  GET https://api.nuget.org/v3-flatcontainer/microsoft.templateengine.abstractions/1.0.0-beta2-20170430-208/microsoft.templateengine.abstractions.1.0.0-beta2-20170430-208.nupkg
WARNING: Unable to find version '1.0.0-beta2-20170430-208' of package 'Microsoft.TemplateEngine.Abstractions'.
  /Users/aroo/.nuget/packages/: Package 'Microsoft.TemplateEngine.Abstractions.1.0.0-beta2-20170430-208' is not found on source '/Users/aroo/.nuget/packages/'.
  https://www.nuget.org/api/v2/: Unable to load the service index for source https://www.nuget.org/api/v2/.
  Object reference not set to an instance of an object
  https://ci.appveyor.com/nuget/nugetizer3000: Unable to load the service index for source https://ci.appveyor.com/nuget/nugetizer3000.
  Object reference not set to an instance of an object
  https://dotnet.myget.org/F/vstest/: Unable to load the service index for source https://dotnet.myget.org/F/vstest/.
  Object reference not set to an instance of an object
  https://dotnet.myget.org/F/roslyn/api/v3/index.json: Unable to load the service index for source https://dotnet.myget.org/F/roslyn/api/v3/index.json.
  Object reference not set to an instance of an object
  https://dotnet.myget.org/F/templating/: Unable to load the service index for source https://dotnet.myget.org/F/templating/.
  Object reference not set to an instance of an object
  https://api.nuget.org/v3/index.json: Error downloading 'Microsoft.TemplateEngine.Abstractions.1.0.0-beta2-20170430-208' from 'https://api.nuget.org/v3-flatcontainer/microsoft.templateengine.abstractions/1.0.0-beta2-20170430-208/microsoft.templateengine.abstractions.1.0.0-beta2-20170430-208.nupkg'.
  Object reference not set to an instance of an object

And so on... I've read somewhere that VS4Mac uses a special version of Nuget.exe because the official version has a problem with HTTPS certificates or proxies, but I don't use a proxy and I don't seem to have problems with HTTPS certs, it's a random null reference somewhere.

I'm kinda puzzled because if I run the nuget.exe binary standalone and try to download a random package, say, Newtonsoft.Json, it works!. If I try to download Microsoft.TemplateEngine.Abstractions with -Version 1.0.0-beta2-20170430-208 it doesn't work either, it says it's not found... so how come this is able to be compiled if it's using missing NuGet packages? this makes no sense!

Is there any way I can fix this, or are there any updated instructions to get the latest MonoDevelop in OSX? (not Xamarin, not VS4Mac, I just want plain MonoDevelop).

Thanks!

Best Answer

Answers

  • DARKGuyDARKGuy CRMember ✭✭

    Hello Chris,

    Thanks a lot for your answer, after a long while, I managed to get Xamarin Studio running instead :) !

  • KjakaKjaka TRMember

    Hello DARKGuy,

    How did you manage to get Xamarin Studio running :( , I really would appreciate any help whatsoever. Im struggling for days now. Thanks in advance.

Sign In or Register to comment.