This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
trouble compiling app w/ jni
- To: java at gcc dot gnu dot org
- Subject: trouble compiling app w/ jni
- From: stewart at neuron dot com
- Date: Sat, 14 Apr 2001 04:30:25 -0500 (CDT)
I'm new to gcj, but not to java. I've got some simple java-only apps working
and now I'm trying to get a couple working that depend on jni native
methods. These are already working with Sun's 1.2.2, 1.3.0 and IBM's 1.3.0.
gcj successfully builds the .class and I've gotten the shared lib compiled
but when I try to build a stand-alone executable with:
gcj --main=foo -o foo foo.class syscall.class
I get at lot of:
/local/uml/opt/sys/syscall.class(.data+0xac): undefined reference to
`syscall::sync(void)'
/local/uml/opt/sys/syscall.class(.data+0xbc): undefined reference to
`syscall::getpid(void)'
/local/uml/opt/sys/syscall.class(.data+0xcc): undefined reference to
`syscall::getuid(void)'
/local/uml/opt/sys/syscall.class(.data+0xdc): undefined reference to
`syscall::setuid(int)'
/local/uml/opt/sys/syscall.class(.data+0xec): undefined reference to
`syscall::gethostname(void)'
/local/uml/opt/sys/syscall.class(.data+0xfc): undefined reference to
`syscall::sethostname(java::lang::String *)'
/local/uml/opt/sys/syscall.class(.data+0x10c): undefined reference to
`syscall::halt(void)'
...
and the LD_LIBRARY_PATH is set correctly. foo.class is dependent on
syscall.class which contains native methods and uses libsyscall.so
(sucessfully compiled).
thanks for any help,
stewart