libgcj_bc.so not embedded

Andrew Haley aph@redhat.com
Sat Apr 7 17:42:00 GMT 2007


Marco Trudel writes:
 > Andrew Haley wrote:
 > > Mohsen Saboorian writes:
 > > > 
 > > > > It's not supposed to be. The idea is that you compile your program
 > > > > and it dynamically links with the libgcj installed on the system.
 > > > 
 > > > Then what happens for example in Windows, where there is no such
 > > > linkable library. Is it possible to statically link my program with
 > > > this .so file so that there would be an absolute stand-alone
 > > > application?
 > > 
 > > Not quite, but you can link using -static-libgcj. It doesn't work for
 > > all Java programs,
 > 
 > Which ones doesn't work?
Anything that loads core classes via reflection or via its own class
loaders, as you must already know by now.
 > If you know how to manually add objects that 
 > are not referenced (and thus aren't pulled into the binary), then 
 > everything is fine. At least for me...
 > 
 > > and in general it's a bad idea. Why do you want to
 > > do this, anyway?
 > 
 > There seem to be two different universes of GCJ users. Both do not 
 > understand why the other even exists. I also live in the one that only 
 > wants GCJ to create standalone binaries. I can't imagine a reason why to 
 > use GCJ as JVM...
 > GCJ is (for me), good to:
 > - get around the problem of telling users to install a JVM. If they have 
 > to install one anyway, why don't then just use one from Sun which has 
 > less bugs?
Aside from the technical reasons:
It's a different way of thinking about the world. With free software,
we share libraries between applications. That way, if a user of one
application finds a bug in a library, they report it and it gets
fixed, and all the other applications that link to the library get the
fix too. By co-operating we all benefit. By linking statically you
make sure that other users can't use the library code you have linked,
but you don't get their help either.
 > - better protect the written code
Protect it from what? Alien invasion? Herds of rampaging Wildebeest? :-)
Andrew.
-- 
Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SL4 1TE, UK
Registered in England and Wales No. 3798903


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /