1

I'm trying to install the latest version of the Mono framework and MonoDevelop on my system. Yesterday I tried the installation on Ubuntu (14.04 LTS) and on Debian (V8.2) today. Both installations failed. I used this official installation guide.

http://www.mono-project.com/docs/getting-started/install/linux/#debian-ubuntu-and-derivatives

I executed this commands.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
sudo apt-get update

The following error occured.

root@debian:/home/administrator# apt-get install mono-complete
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 mono-complete : Depends: mono-devel (= 4.2.1.102-0xamarin1) but it is not going to be installed
                 Depends: mono-4.0-service (= 4.2.1.102-0xamarin1) but it is not going to be installed
                 Depends: libmono-cil-dev (= 4.2.1.102-0xamarin1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Does anyone know a solution?

Thanks a lot, Jordy

Jordy
  • 661
  • 7
  • 26

1 Answers1

3

Try the following:

sudo apt-get install libjpeg62-turbo

And if you get:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package libjpeg62-turbo is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or is only available from another source E: 
Package 'libjpeg62-turbo' has no installation candidate

Assuming you are on a ARCH 64-bit system, then you can get this package via:

wget http://ftp.br.debian.org/debian/pool/main/libj/libjpeg-turbo/libjpeg62-turbo_1.4.1-2_amd64.deb

Install the deb:

sudo dpkg --install --recursive --auto-deconfigure libjpeg62-turbo_1.4.1-2_amd64.deb 

Now install mono/monodevelop:

sudo apt-get install mono-devel
sudo apt-get install monodevelop

Re: http://sushihangover.github.io/mono-ubuntu-broken/ (disclaimer, this is my blog post)

SushiHangover
  • 73,120
  • 10
  • 106
  • 165
  • Absolutely nothing I've done has managed to get the latest version of mono installed, including this. As of the time of writing, the `wget ...` step results in a 404 error. I can't believe how ridiculous it's getting to install mono on Debian. – Tagc Feb 17 '17 at 14:39
  • @Tagc This is from 11/2015.... if by "latest" version of mono, you are talking about 4.8+ go with the CI packages (http://www.mono-project.com/docs/getting-started/install/linux/ci-packages/), if by "latest" you mean stable 2.6.x : http://packages.ubuntu.com/search?keywords=mono-complete – SushiHangover Feb 17 '17 at 14:44
  • "This is from 11/2015" I know, it wasn't a criticism of your answer or anything. I'll try following the CI package installation instructions, thanks. – Tagc Feb 17 '17 at 14:48
  • Unfortunately even with the latest snapshot version (v4.9.1, built while I was asleep this morning) NuGet still doesn't work, most likely due to certificate problems. I was hoping that using the latest version would resolve this as according to the docs: "Mono on Linux before 3.12 by default didn’t trust any SSL certificates so you got errors when accessing HTTPS resources. This is not required anymore as 3.12 and later include a new tool that runs on package installation and syncs Mono’s certificate store with the system certificate store". – Tagc Feb 17 '17 at 15:07
  • @Tagc Mono 4.8+ now uses Google's BoringSSL : http://www.mono-project.com/docs/about-mono/releases/4.8.0/#tls-12-support – SushiHangover Feb 17 '17 at 15:19
  • That's useful information, thanks. With the latest mono snapshot I was able to run "cert-sync" but not "btls-cert-sync" (couldn't locate a package by that name either). Not that it matters as I managed to accomplish what I was trying to do using "curl -X POST ..." instead, so I no longer need to install Nuget/mono during CI builds. Thank you all the same - this might be helpful to others. – Tagc Feb 17 '17 at 15:41