> On 9 March 2010 17:31, Vladimir Sizikov <vsizi...@gmail.com> wrote: > > I think Wayne had some thoughts on how to build the launcher so that > > it would be compatible with as much Linux distros as possible (by > > carefully selecting the toolchain and compiler/lib versions). > > The "sweet spot" I found for linux binaries is to build them on ubuntu > 6.06.
May I suggest that the "sweet spot" for linux binaries is to have them packaged by there respective distro. Linux users really should be using their package manager for installing jruby. Within gentoo I know there is current a push by one dev to make jruby a standalone, drop in replacement for ruby. The same would occur for jython if it didn't lag so much. (This might come out a little as someone who is very bitter, but here it goes anyway. Please not that this is a general statement, and not directed at anyone or any project, jruby is probably a little better than average on this). Java and ruby [1] projects seem to have this idea that because there applications can "run everywhere" they shouldn't be able to be "built everywhere". Many java projects are a really pain to package for gentoo. Some of the common mistakes are * Bundling jars within jars ( or using jarjar to combine them all ). tomcat for example combines *parts* of 3 common-* jars into 1. This itself is a lib of the source build so isn't reproducible. I realise why you do it for jruby- complete.jar, but it would be oh so very very nice if it was extremely easy not to do it. * Ignoring CC, CFLAGS and LDFLAGS [2]. (Very very very common) Hopefully someone will get around to sending patches upstream for you guys. * Not providing source releases of packages (jffi, jna* guys). Having to fetch from scm's can be very annoying. At least you guys tag your releases. Try getting the source code for a package version when you need to know the last time the dev making the release sync'd trunk. * not using -source and -target with javac (we automagically rewrite build.xml files to 'fix' this). * including unit tests within the the production jar In fact it might be nice if you read our ebuild [3] [4]. Hopefully you will be able to follow it. My hope is to come back to you guys in a more constructive mood, bearing gifts of patches etc and really get jruby to be bloody brilliant on gentoo. when I get time. while there aint that many jruby related defects [5], some will be difficult to fix. The unit tests failing being a good example So please talk to your local ubuntu/debian, fedora, ****gentoo**** representative, get the distro's to be the main way you get jruby to the masses. > > This has: > - old glibc (2.3.x) - one of the perpetual problems jffi had was > building on glibc 2.4 and not running on older distros with 2.3.x > > - gcc 3.4.x - the C++ abi is compatible from gcc 3.4.x thru to current > gcc 4.x. This means dynamically linked binaries will work with the > libstdc++.so.6 on current distros. Before 3.4.x, the abi changed more > often than some people change their underwear. > > I have both 32bit and 64bit ubuntu 6.06 vms that I keep around > specifically for building jffi, that I could build the native launcher > with. And when there is a security vulnerability in the glibc version you built against are you going to release your own vulnerability and rebuilt the release again? Alistair Bush Gentoo Linux Developer - Java http://www.gentoo.org/ [1] http://blog.flameeyes.eu/2009/12/25/ruby-gems-problems-missing-dependencies [2] https://bugs.gentoo.org/show_bug.cgi?id=271533 [3] http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev- java/jruby/jruby-1.4.0-r5.ebuild?rev=1.2&view=markup [4] http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-java/jruby/files/ [5] https://bugs.gentoo.org/buglist.cgi?quicksearch=jruby+OR+jna+OR+jffi --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email