Hello, I have built a variant of the Mono framework on Snow Leopard with an improved patch for bug #537764<https://bugzilla.novell.com/show_bug.cgi?id=537764>. For those who are interested, you can: - install an official version of Mono to get all the soft links in place - download the archive: http://build.monobjc.net/binaries/Mono.framework.2.6_M.tar.bz2 - unarchive it under /Library/Frameworks/Mono.framework/Versions - relink the current version to the new one (sudo rm Current && sudo ln -s 2.6_M Current)
Beware that: - The archive only contains a small subset of the Mono framework (Mono + NAnt) - You should be able to package and run Monobjc's applications - It does not contains all the third-party assemblies or the GTK parts. - It will probably only work on Snow Leopard My goal is to know if the patch is robust enough to be pushed to Mono team. Regards, Laurent Etiemble. 2009/10/12 Franky De Meyer <[email protected]> > Thanks for the extra tips Kenny, but I must admit I've now given up on > trying to build Mono on Snow Leopard myself. > This seems like a rather specialized matter, and requires more insight in > the Mono build process (+ related Linux tools) than I can handle. > > I noticed the new installer for OSX today (on mono-project), version > 2.4.2.3_6, so I was anxious to try it out on the SimpleCocoaApp on Snow > Leopard, but unfortunately it still crashes, so it looks like the proposed > patch is not in it yet... > > This is all quite depressing. Just as I was finally getting ready to > release > my app for OSX, it turns out that many of the potential users have already > upgraded to Snow Leopard, so it's back to zero now. Sometimes I wonder > whether I shouldn't have just taken the plunge and should have ported the > entire app to XCode. Of course that would mean that none of my code would > have been shared between Windows and Mac, while with the mono/monobjc > solution I can have 70% common code. > > In any case, thanks again to Laurent for the great work and trying to help > us out with this Mono problem. And thanks to you Kenny, for your efforts > and > guidance. > Let's hope we can soon join the Snow Leopard gang ... > > Franky > > > > -----Original Message----- > From: Kenny Clement [mailto:[email protected]] > Sent: vrijdag 2 oktober 2009 15:23 > To: [email protected] > Subject: Re: [[email protected]] Re: [[email protected]] > Feeback > Wanted on Snow Leopard > > Franky, > > For glib, I'm using the following: > > CC="cc -L/Users/fdm/Mono/lib" CFLAGS="-I/Users/fdm/Mono/include -m32" > PATH=/Users/fdm/Mono/bin:$PATH ./configure --prefix=/Users/fdm/Mono > > sorry, I forgot that CC and extra CFLAGS in my previous mail. > When I got your gettext error, it was because my mono prefix was not in > the path, however, you say it is. > > I also did an upgrade from leopard to Snow. > > My application is now working without crashes, however, on a certain > window in my app, CPU spikes to 100% whenever something on the form is > changed. > This CPU spike only occurs after a few hours (or lots of activity), it > seems to 'build up' and after a while, the app is no longer usable. > > Still investigating, trying to turn off some bindings, ... seeing if > that helps or not. > I didn't get this behaviour on Leopard / old mono, so it must be > something in either Snow Leopard, or the new Mono (after all, it is an > svn build, not an official release). > > I also see some issues when building my app with integrated mono, it > fails a lot more than on regular leopard. > > I don't think either of those issues is related to the patch from > Laurent/Sledge Ham, but we're still testing... > > mvg, > > - Kenny > > > Franky De Meyer wrote: > > Thanks for the extra info for the Snow Leopard build. > > > > It helped me get a little further now: "GNU Gettext" and "pkg-config" now > > both build OK on Snow Leopard. > > The "glib" configure however stops with following error: > > > > (After installing Gettext and pkg-config in /Users/fdm/Mono) > > When I execute: > > > > cd glib-2.22.0 > > CFLAGS="-m32" > > CXXFLAGS="-m32" > > CC="cc -L/Users/fdm/Mono/lib" > > ./configure --prefix=/Users/fdm/Mono > > > > I get the following output: (only the last few lines shown) > > ---------------- > > ... > > checking for libintl.h... yes > > checking for ngettext in libc... no > > checking for bindtextdomain in -lintl... no > > checking if -liconv is needed to use gettext... > > checking for ngettext in -lintl... no > > configure: error: > > *** You must have either have gettext support in your C library, or use > the > > *** GNU gettext library. ( > http://www.gnu.org/software/gettext/gettext.html > > ------------------ > > > > So, there must still be something I'm doing wrong. The install of > > gettext-0.17 was OK, and was built with the same settings as glib. > > I can just type gettext at the command prompt however, and it is found.I > > have the latest XCode version. I did do an upgrade from Leopard to Snow > > Leopard and not a fresh install. Maybe that has something to do with it. > > > > In any case, thanks for your help. > > > > BTW, does your app work OK on Snow Leopard, with the latest patch from > > Laurent? > > > > Regards, > > Franky > > > > > > > > > > > > From: Kenny Clement [mailto:[email protected]] > > Sent: donderdag 1 oktober 2009 9:56 > > To: [email protected] > > Subject: Re: [[email protected]] Re: [[email protected]] > Feeback > > Wanted on Snow Leopard > > > > Franky, > > > > I've struggled with the same issues. > > In order to build Mono on Snow Leopard, you need the CFLAGS and CXXFlags > set > > to -m32 for Mono and all the components required for it (gettext, > > pkg-config, libiconv, glib): > > example: > > > > CFLAGS="-m32" CXXFLAGS="-m32" ./configure --prefix=/mono > > make > > make install > > > > (note that the prefix should be changed to where-ever you want to install > > it.) > > Add the prefix path to your envvar PATH if it is not yet in there. > > (otherwise it will complain about not finding gettext, ...) > > > > In case you get 'deprecated' errors in ucontext, add the following line > at > > the top in /usr/include/ucontext.h: > > #define _XOPEN_SOURCE 500 > > > > (I'm sure there is a better way, but this works for me.) > > > > nant is a separate install (build) if you compile Mono: > > > > http://www.mono-project.com/NAnt_Installation > > > > Hope this helps! > > > > - Kenny > > > >

