AW: AW: [Mono-list] Daily build errors

Raja R Harinath rharinath@novell.com
Fri, 29 Oct 2004 13:56:11 +0530


Hi,

"Jochen Wezel (CompuMaster GmbH)" <jwezel@compumaster.de> writes:

> I needed to update my mono runtime because I cannot compile via CVS.
>
> In folder mono, I started with:
>
> ./autogen.sh --prefix=3D/usr
> make
> make install
> [......]
> /bin/sh ../../mkinstalldirs /usr/lib/mono/1.0
>  /usr/bin/install -c -m 644 mscorlib.dll /usr/lib/mono/1.0/mscorlib.dll
> /usr/bin/install -c -m 644 ./mscorlib.dll.mdb /usr/lib/mono/1.0/mscorlib.=
dll.mdb
> MONO_PATH=3D. ../../mono/mini/mono --config ../../data/config ./../gacuti=
l.exe /i ./Accessibility.dll /f /package 1.0 /gacdir /usr/lib /root /usr/lib
> Corlib not in sync with this runtime: expected corlib version 28, found 2=
6.
> Download a newer corlib or a newer runtime at http://www.go-mono.com/dail=
y.
> make[3]: *** [install-data-local] Fehler 1
> make[3]: Verlassen des Verzeichnisses Verzeichnis =C2=BB/mono-dev/mono-cv=
s-auth/mono/runtime/net_1_1=C2=AB
> make[2]: *** [install-am] Fehler 2
> make[2]: Verlassen des Verzeichnisses Verzeichnis =C2=BB/mono-dev/mono-cv=
s-auth/mono/runtime/net_1_1=C2=AB
> make[1]: *** [install-recursive] Fehler 1
> make[1]: Verlassen des Verzeichnisses Verzeichnis =C2=BB/mono-dev/mono-cv=
s-auth/mono/runtime=C2=AB
> make: *** [install-recursive] Fehler 1

You have a mismatched mscorlib.dll in mono/runtime/net_1_1.  You need
'make bootstrap' to fix it.  But, you were over eager and did a 'make
install' :-)  And so ...

> For testing purposes, I also started that:
>
> [root@lwezel mono]# make bootstrap
> rm -f ./../mcs/mcs/mcs.exe ./../mcs/class/lib/default/mscorlib.dll ./../m=
cs/class/lib/default/System.dll ./../mcs/class/lib/default/System.Xml.dll .=
/../mcs/class/lib/default/Mono.CompilerServices.SymbolWriter.dll
> for dir in jay mcs class/corlib class/System; do \
>   (cd ./../mcs/$dir && make PROFILE=3Ddefault NO_SIGN_ASSEMBLY=3Dyes USE_=
BOOT_COMPILE=3Dyes BOOTSTRAP_MCS=3D"mcs -d:BOOTSTRAP_WITH_OLDLIB") || exit =
1 ; \
> done
> make[1]: Wechsel in das Verzeichnis Verzeichnis =C2=BB/mono-dev/mono-cvs-=
auth/mcs/jay=C2=AB
> make all-local
> make[2]: Wechsel in das Verzeichnis Verzeichnis =C2=BB/mono-dev/mono-cvs-=
auth/mcs/jay=C2=AB
> make[2]: F=C3=BCr das Target =C2=BBall-local=C2=AB gibt es nichts zu tun.
> make[2]: Verlassen des Verzeichnisses Verzeichnis =C2=BB/mono-dev/mono-cv=
s-auth/mcs/jay=C2=AB
> make[1]: Verlassen des Verzeichnisses Verzeichnis =C2=BB/mono-dev/mono-cv=
s-auth/mcs/jay=C2=AB
> make[1]: Wechsel in das Verzeichnis Verzeichnis =C2=BB/mono-dev/mono-cvs-=
auth/mcs/mcs=C2=AB
> make all-local
> make[2]: Wechsel in das Verzeichnis Verzeichnis =C2=BB/mono-dev/mono-cvs-=
auth/mcs/mcs=C2=AB
> mcs -d:BOOTSTRAP_WITH_OLDLIB   -d:NET_1_1 -d:ONLY_1_1 -g /target:exe /out=
:mcs.exe cs-parser.cs  @mcs.exe.sources
> Corlib not in sync with this runtime: expected corlib version 28, found 2=
2.
> Download a newer corlib or a newer runtime at http://www.go-mono.com/dail=
y.
> make[2]: *** [mcs.exe] Fehler 1
> make[2]: Verlassen des Verzeichnisses Verzeichnis =C2=BB/mono-dev/mono-cv=
s-auth/mcs/mcs=C2=AB
> make[1]: *** [all.real] Fehler 2
> make[1]: Verlassen des Verzeichnisses Verzeichnis =C2=BB/mono-dev/mono-cv=
s-auth/mcs/mcs=C2=AB
> make: *** [mcs-do-basic-build] Fehler 1
> [root@lwezel mono]#
>
> I'm wondering why it finds sometimes runtime version 22, and the next tim=
e 26...

Now, 'make bootstrap' is trying to run the installed version of 'mono',
which is inconsistent.  It has to do with the partial 'make install'
from the previous run.  The 'mscorlib.dll' in /usr is version 22, but
the newly installed 'mono' wants version 28.

> In any case, this is the cause why I tried to build from the "daily build=
s" completely new.

Or, you could've tried

  make get-monolite-latest
  make monolite-bootstrap

This doesn't use the installed version of 'mono', and should circumvent
the other problems that you have.

- Hari