Gjdoc Troubleshooting FAQ ========================= Last updated: 2004-12-11 When building and running Gjdoc there are several problems you can run into at the time of this writing. Most of these stumbling blocks will go away in the near future, but for the time being you may want to check this FAQ if you encounter any problems. General Advise -------------- You need gcj 4.0 for compiling gjdoc. If possible, install gcj 4.0 as the system-wide default. Most problems occur because at some point an older version of gcj is accidentally used. You can also avoid potential problems by sticking with the same user for building and installing both GNU JAXP and gjdoc. For this purpose, configure both packages with a prefix your user has write access to so that you don't have to become root for installing it. Compile-time Troubleshooting ---------------------------- Q: I'm getting error messages like "undefined reference to `java::lang::StringBuffer::append(java::lang::StringBuffer*)'" A: You're using an old version of gcj. Make sure you use gcj 4.0. ----- Q: I'm getting the error message "-l-gnu-xml: No such file or directory". A: You have to install GNU JAXP in $PREFIX before building gjdoc. ----- Q: I'm trying to build GNU JAXP, but I'm getting error messages while compiling the libxmlj C source. A: You probably have Sun JDK installed. Make sure that the environment variable JAVA_HOME is unset when invoking GNU JAXP's configure script. Otherwise, the build will use the jni.h header file that comes with JDK instead of the one which belongs to gcj. ----- Run-time Troubleshooting ------------------------ Q: When invoking gjdoc, I get the error message "libgcj.so.6 not found on library search path". A: Make sure your LD_LIBRARY_PATH contains the gcj 4.0 lib/ directory. ----- Q: Gjdoc hangs at some point. A: You've mixed different versions of gcj. Probably you have compiled GNU JAXP with an older version of gcj. See the following post: http://gcc.gnu.org/ml/java-patches/2004-q4/msg00849.html Note that gcj will also be invoked during "make install" of GNU JAXP. If you are executing "make install" as root, chances are that the PATH variable for your root account points to a wrong version of gcj. Double-check that gcj 4.0 is used at all times. -----