[Nexus-developers] NeXus autotools

Mark Koennecke Mark.Koennecke at psi.ch
Tue Jun 15 08:21:15 BST 2004


  High there,

  The new autotools stuff for NeXus does not work yet. I finally got access
  to a Redhat 9 system, thus I'am now pretty sure that the generated 
  configure script is not crap.

  On Tru64, I get the following results:

  - Building the f90 binding does not work, the error message is:
    * libtool tag: --tag=F77 not recognized. 
    This tag seems pretty inappropriate to me, anyway.
  - Building the java binding does not work either, it cannot find jni.h
    What has to happen here, is that configure has to determine JAVA_HOME,
    i.e. the installation directory of the java SDK. Then, a 
    -I$JAVA_HOME/include and -I$JAVA_HOME/include/machinetype is needed to
    make this compile. Replace machinetype by alpha on an alpha, by linux
    on a linux, by win32 on an evil system, may be to something else on
    other systems.     

  On Redhat 7.3:
  - Java compilation problem, as above.
  - I made a make distclean before I reconfigured for Redhat 7.3. This was
    not enough, there was still a leftover file in bindings/f77.  As I got rid
    of it buy cd'ing into the directory and typing make clean, this looks
    as if a Makefile is not being called when cleaning up. 

  General remarks:
  - Somebody has taken apart napi.c in three separate object files, napi.o,
    napi4.o and napi5.o. This is a nice idea but the trouble is that it does 
    not work for me. I experience core dumps from NXdict or the Java binding
    whenever an error is triggered. I played a bit with it, i.e. tried to
    remove all the static keywords and make the error reporting functions
    external but to no avail. This is some pretty subtle linking thing.
    May be, it is only triggered when you overload the error reporting
    functions. Lacking the time to do more work to this, I reverted to the 
    all in one file included version. Which happens to work.
  - There is nothing which stops the Java binding to work with the older
    JDK 1.1. 1.1 is outdated but still polpular because it uses a third
    of the memory then the newer Java versions. I suggest to add the 
    compile option -target 1.1 in order to allow for JDK 1.1.
  
		Best Regards,

		     Mark 






More information about the NeXus-developers mailing list