This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Confused about jar/lib usage


Michael Koch writes:
 > On Tue, Feb 03, 2004 at 01:26:10PM -0800, Fx Mx wrote:
 > > I'm not actually interested in compiling libgcj.jar,
 > > I'm interested in compiling another jar file. But
 > > thought that libgcj.jar should work if any... so that
 > > I could use this example to make sure I understood how
 > > it worked.

libgcj is linked with a bunch of native code as well, so what you're
trying won't work.  It's a special case.

 > I compiled today gnujaxp.jar and used it in another app like this:
 > 
 > gcj -c gnujaxp.jar   (this produces gnujaxp.o)
 > gcj -c Test.java     (this produces Test.o)
 > gcj -o test --main=Test Test.o gnujaxp.o
 > 
 > Producing *.so directly is IMO not possible *.so files are several *.o
 > files bundled together with ar.

I see we need an example.  This is an example from GNU/Linux.

foo.java:

public class foo
{
  static void hello ()
  {
	System.out.println("Hello, world!");
  }
}


hello.java:

public class hello
{
  public static void main (String[] argv)
  {
	foo f = new foo();
	f.hello ();
  }
}

And these are the commands:


$ gcj -shared foo.java -o libfoo.so -fpic
$ gcj hello.java --main=hello --classpath=. -lfoo -L. -o hello
$ LD_LIBRARY_PATH=. ./hello
Hello, world!

Andrew.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]