[Mono-list] [ROOKIE QUESTION] corlib

Adam Treat manyoso@yahoo.com
Fri, 27 Sep 2002 13:37:29 -0400


On Friday 27 September 2002 01:19 pm, Ferguson, Neale wrote:
> Hi again,
>  My previous "autoconf" problem was not a problem if I used autogen.sh to
> do the work for me.
>  Now I have built a CVS version of the code, how do I get a corlib that is
> "in sync." with the executable (i.e. how do I stop the "Your mono runtime
> and corlib are out of sync" message)?

This is an issue we've been struggling with for quite sometime.  It is a 
difficult problem and we have not been able to come up with a fool-proof 
solution to the issue of compiling mono/corlib from cvs in a reliable way.  
The truth is it's a black art.  Here is my best suggestion:

Try to think of corlib.dll and the mono runtime as two parts of the same 
program.  If you make install the runtime then you must make install the 
corresponding corlib.dll, but you want to install the corlib.dll *after* 
you've installed the runtime, because installing the runtime can result in 0 
Kb dlls in /usr/local/lib.

Let me say that again for emphasis, the corlib.dll and mono runtime must 
always be in sync.  Now the problem: how do you reliably compile corlib.dll 
without the corresponding runtime.  Well the usual answer (this does not 
always work) is to keep a different version (usually a release) of 
mono/corlib/mcs installed just for compiling current cvs.  Once you have a 
version of mono from cvs installed i would suggest making a backup of all 
dlls/runtimes/mcs and keeping these in a safe place in order to restore 
later. 

I hope this helps,

Adam