You are here

Compiling latest versions of monodevelop on FreeBSD

Ivan Radovanovic's picture

Clone their repository from git (tarballs created by them fail way too often)

git clone https://github.com/mono/monodevelop.git

Optionally checkout version you want to run (list tags by running git tag -l in that newly created monodevelop dir, and checkout one you want using command similar to git checkout tags/monodevelop-5.7.1.47).
After that you need to edit file monodevelop/scripts/configure.sh because those guys didn't hear that there are other shells but bash in use these days - add line #!/usr/bin/env bash on top of that file. After that execute:

cd monodevelop
./configure
gmake

If everything went well this will succeed (unfortunately unlikely), otherwise you received great explanatory message saying "Command 'mono /home/rivan/sw/monodevelop/main//external/nuget-binary/NuGet.exe restore -SolutionDirectory /home/rivan/sw/monodevelop/main/' exited with code: 1" - as is evident from message text this is caused by nuget being unable to find all server certificates it needs in certificate store. To fix this run mozroots --import --sync (or mozroots --import --machine --sync to import to machine's store). After this you can restart gmake again - it should work this time.

If you don't want to install newly compiled monodevelop you need to edit makefile in main subdir (monodevelop/main) - find lines mentioning "exec -a" (one more bash extension) and remove "-a" and first parameter that comes after it. After that you will be able to run monodevelop without installing it by running gmake run from master directory (monodevelop).