Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have an application that is targeted to .NET Framework 4.0, and I am building an installer script for Linux that needs to build a custom version of Mono which is installed to the user's home directory (or location of choice).

There is some documentation on Unsupported Advanced Mono Compile Options that states you can specify --with-profile2=no in the configure command. I tried this and it did not work, so looking further into the configure script, I see that nothing is actually done with this option.

I have not yet been able to determine if there is a compiler flag I can set or if there is another option that would let me skip building .NET 2 runtime files since it takes about 20-30 minutes to build Mono.

The configure command I was trying:

./configure \
--prefix=/opt/mono \
--with-profile2=no \
--with-moonlight=no \
--with-profile4=yes \

This is Ubuntu 10.10, and I am building Mono from source using the latest version 2.10.8.

share|improve this question
up vote 1 down vote accepted

Right now it is not possible to compile mono with the NET 2.0 profile disabled.

It will probably be implemented some time in the future (when someone gets too tired of waiting for the build to finish for something they do not need/want) - feel free to give it a shot, but it might be complicated since many things depend on having a 2.0 profile available.

share|improve this answer
Thanks for the info. Is this "simply" a matter of having the makefile not compile all the 2_0 related files, or do preprocessor directives need to be added to many files to build it in this way? I may give it a shot but it is probably only worth it at this point if the fix was quick and easy. I thought since the configure flag was on the docs page it was mostly implemented, or that perhaps it was left out of that version accidentally. – drew010 Mar 2 '12 at 0:06
Preprocessor directives do not need to be added, 99.9% of the changes should be in the build system (which is quite complex, unless you're fluent in make). And the same goes for the fix: it won't be quick and easy unless you know quite a lot about how makefiles work (or have previous experience with mono's build system, which I assume you don't). – Rolf Bjarne Kvinge Mar 2 '12 at 0:40
I'll leave it to the pros, I am definitely not familiar enough with Mono's build system at this time to try taking this on. Thanks again. – drew010 Mar 2 '12 at 0:45

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.