Greetings,
I tried to mail this in June and the request never appeared on the list. I have since tried to build mono 1.1.8.2 and the build fails in exactly the same place. The build fails because make fails to build mcs. The failure appears to be in the scripts and configuration. I would greatly appreciate some insights. Gerard Tromp -----Original Message----- From: Gerard Tromp [mailto:[EMAIL PROTECTED] Sent: Thursday, June 02, 2005 11:54 To: [email protected] Subject: mono 1.1.7 build on Solaris fails Greetings, Tying to build mono 1.1.7 on Sun Sparc Solaris 2.6. uname -m = sun4m uname -r = 5.6 uname -s = SunOS Using gcc: 3.4.0 gmake: GNU Make 3.80 The build fails when trying to make the mcs compiler. I have added lines of +++++ before and after the point of failure below. I alos debugged the process further and it seems that the build is guaranteed to fail because a make does not have arule for making the target: ./build/deps/basic-profile-check.out. Is this problem due to the Solaris platform or do most people actually end up using the pre-compiled binaries? Sincerely, Gerard Tromp Making all in runtime gmake[2]: Entering directory `/home/tromp/software/mono-1.1.7/runtime' d=`cd ../support && pwd`; \ sed 's,target="libMonoPosixHelper[^"]*",target="'$d/libMonoPosixHelper.la'",' ../data/config > wrapper-config if test -z ""; then :; else \ mv wrapper-config wrapper-configt; \ sed 's,<configuration>,& <dllmap dll="gdiplus.dll" target="" />,' wrapper-configt > wrapper-config; \ rm -f wrapper-configt; \ fi if test -w ../mcs; then :; else chmod -R +w ../mcs; fi d=`pwd`; cd ../mcs && gmake PROFILES='default net_2_0' all-profiles gmake[3]: Entering directory `/home/tromp/software/mono-1.1.7/mcs' gmake profile-do--default--all profile-do--net_2_0--all gmake[4]: Entering directory `/home/tromp/software/mono-1.1.7/mcs' gmake PROFILE=basic all gmake[5]: Entering directory `/home/tromp/software/mono-1.1.7/mcs' ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ gmake[6]: Entering directory `/home/tromp/software/mono-1.1.7/mcs' usage: mcs -Vcdp -a 'string' [-n 'name'] files... gmake[6]: *** [build/deps/basic-profile-check.exe] Error 1 gmake[6]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs' *** The compiler 'mcs' doesn't appear to be usable. *** Falling back to using pre-compiled binaries. Be warned, this may not work. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ gmake[6]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake all-local gmake[7]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake[7]: Nothing to be done for `all-local'. gmake[7]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake[6]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake[6]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/mcs' gmake[6]: `cs-parser.cs' is up to date. gmake[6]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/mcs' gmake[6]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake all-local gmake[7]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake[7]: Nothing to be done for `all-local'. gmake[7]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake[6]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake[6]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/mcs' gmake all-local gmake[7]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/mcs' gmake[7]: Nothing to be done for `all-local'. gmake[7]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/mcs' gmake[6]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/mcs' gmake[6]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/class' gmake[7]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/class/corlib' gmake all-local gmake[8]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/class/corlib' gmake[8]: Nothing to be done for `all-local'. gmake[8]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/class/corlib' gmake[7]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/class/corlib' gmake[7]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/class/System' gmake all-local gmake[8]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/class/System' gmake[8]: Nothing to be done for `all-local'. gmake[8]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/class/System' gmake[7]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/class/System' gmake[7]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/class/System.XML' gmake all-local gmake[8]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/class/System.XML' gmake[8]: Nothing to be done for `all-local'. gmake[8]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/class/System.XML' gmake[7]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/class/System.XML' gmake[7]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/class/System' gmake all-local gmake[8]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/class/System' gmake[8]: Nothing to be done for `all-local'. gmake[8]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/class/System' gmake[7]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/class/System' gmake all-local gmake[7]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/class' gmake[7]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/class' gmake[6]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/class' gmake all-local gmake[6]: Entering directory `/home/tromp/software/mono-1.1.7/mcs' gmake[6]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs' gmake[5]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs' gmake PROFILE=net_1_1_bootstrap all gmake[5]: Entering directory `/home/tromp/software/mono-1.1.7/mcs' gmake[6]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake all-local gmake[7]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake[7]: Nothing to be done for `all-local'. gmake[7]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake[6]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/jay' gmake[6]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/mcs' gmake all-local gmake[7]: Entering directory `/home/tromp/software/mono-1.1.7/mcs/mcs' MONO_PATH="../class/lib/basic:$MONO_PATH" /home/tromp/software/mono-1.1.7/runtime/mono-wrapper ../class/lib/basic/mcs.exe -d:NET_1_1 -d:ONLY_1_1 -debug /target:exe /out:mcs.exe cs-parser.cs @mcs.exe.sources Segmentation Fault - core dumped gmake[7]: *** [../class/lib/net_1_1_bootstrap/mcs.exe] Error 139 gmake[7]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/mcs' gmake[6]: *** [all.real] Error 2 gmake[6]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs/mcs' gmake[5]: *** [all-recursive] Error 1 gmake[5]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs' gmake[4]: *** [profile-do--net_1_1_bootstrap--all] Error 2 gmake[4]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs' gmake[3]: *** [profiles-do--all] Error 2 gmake[3]: Leaving directory `/home/tromp/software/mono-1.1.7/mcs' gmake[2]: *** [all-local] Error 2 gmake[2]: Leaving directory `/home/tromp/software/mono-1.1.7/runtime' gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory `/home/tromp/software/mono-1.1.7' gmake: *** [all] Error 2 debugging the make process at the point of failure shows: ======================================================== gmake -n PROFILE=basic all ok=:; \ rm -f ./build/deps/basic-profile-check.exe ./build/deps/basic-profile-check.out; \ gmake -s ./build/deps/basic-profile-check.out || ok=false; \ rm -f ./build/deps/basic-profile-check.exe ./build/deps/basic-profile-check.out; \ if $ok; then :; else \ echo "*** The compiler 'mcs' doesn't appear to be usable." 1>&2 ; \ if test -f ./class/lib/monolite/mcs.exe; then \ echo "*** Falling back to using pre-compiled binaries. Be warned, this may not work." 1>&2 ; \ ( cd ./jay && gmake ); \ ( cd ./mcs && gmake PROFILE=basic cs-parser.cs ); \ ( cd ./class/lib/monolite/ && cp *.exe *.dll ../basic ); \ case `ls -1t ./class/lib/basic/mcs.exe ./mcs/cs-parser.cs | sed 1q` in \ ./class/lib/basic/mcs.exe) : ;; \ *) sleep 5; cp ./class/lib/monolite/mcs.exe ./class/lib/basic ;; \ esac; \ else \ echo "*** You need a C# compiler installed to build MCS. (make sure mcs works from the command line)" 1>&2 ; \ echo "*** Read INSTALL.txt for information on how to bootstrap a Mono installation." 1>&2 ; \ exit 1; fi; fi mcs /out:build/deps/basic-profile-check.exe build/deps/basic-profile-check.cs mono build/deps/basic-profile-check.exe > build/deps/basic-profile-check.out 2>&1 : : set . $MAKEFLAGS; final_exit=:; \ case $2 in --unix) shift ;; esac; \ case $2 in *=*) dk="exit 1" ;; *k*) dk=: ;; *) dk="exit 1" ;; esac; \ list='jay mcs class'; for d in $list ; do \ (cd $d && gmake all) || { final_exit="exit 1"; $dk; } ; \ done; \ $final_exit ============================================================= OK. So we check out what is happening with the line: ------------------------------------------------ gmake -s ./build/deps/basic-profile-check.out || ok=false; gmake ./build/deps/basic-profile-check.out gmake: *** No rule to make target `build/deps/basic-profile-check.out'. Stop. Therefore, the build of mcs is guaranteed to fail on Solaris. _______________________________________________ Mono-list maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-list
