[Nexus-developers] new NeXus API

Akeroyd, FA (Freddie) F.A.Akeroyd at rl.ac.uk
Wed Aug 28 18:57:31 BST 2002


Uwe,

I have Visual Studio projects for both static and dynamic 
NeXus libraries on Windows, and also for building the example and test
programs. I was planning to put these back into the source repository, but
the only thing that is
holding me up is the fortran90 library ... hopefully i can get back to that
tomorrow and locate the problem

Regards,

Freddie  

-----Original Message-----
From: Uwe Filges [mailto:Uwe.Filges at psi.ch]
Sent: 27 August 2002 14:13
To: ROsborn at anl.gov
Cc: nexus-developers at anl.gov
Subject: [Nexus-developers] new NeXus API


Dear Ray,

I have compiled the new NeXus API version and I have also tested
different NeXus Applications.
I am sure that your changes are alright in the file napi5.c . The
changes don't have influence of
another functions of the API. All things are fine in the test
applications !

But during testing of the new version I am running in different
problems.

(1) On my DEC Alpha workstation with TRU64 unix the predefined macro
__unix don't work.
      In the file napi.h I have changed the line 119:
      #if defined (__unix)
       to
      #if defined (__unix) || defined (__unix__)

       Without this change I got the message "unknown operating system"
(Line 234)!

(2) Also the Fortan77 interface I couldn't create at beginning with the
standard flags.
      In the file makefile_options I have changed the line 30:

      FC=g77 to FC=f77

      The gnu compiler produces a long list of errors on my DEC Alpha.
The standard f77 compiler works
      fine.

(3) Furthermore I must add the library -lm (math library libm.a) for the
applications napi4_test napi5_test and NXbrowse
      in the makefiles makefile_hdf* . Without the library the compiling
process is broken.

      napi4_test: libNeXus.a $(TEST4_OBJ)
      $(CC) $(CFLAGS) $(LDFLAGS) -non_shared -o napi4_test $(TEST4_OBJ)
$(FROOT)/libNeXus.a \
      -L$(H4ROOT)/lib -lmfhdf -ldf $(H4ROOT)/lib/libjpeg.a
-L$(H5ROOT)/lib -lhdf5 -lm -lz

     Additionally we have problems with the shared library libjpeg.so .
That's why we are using the static library (option -non_shared).
     The full path should be set for the libjpeg.a in order to avoid
conflicts with different HDF versions. I our case the TRU64 systems
contain
      preinstalled the HDF4 version 4.1 release 2.

(4) The file napi5_test.c includes a simple bug.

     In line 139 the created HDF4 file (napi4_test) will be opened.

     Change from
     if (NXopen ("NXtest.nx4", NXACC_RDWR, &fileid) != NX_OK) return 1;
     to
     if (NXopen ("NXtest.nx5", NXACC_RDWR, &fileid) != NX_OK) return 1;

(5) For some times we have proposed to set the NeXus API version number
to 2.0 ! What is your point of view ?

(6) In the next days I will try to built a static or dynamic NeXus
library for Windows. First steps are already done.

(7) The file makefile_hdf45 produces "null commands" because some blank
lines in the makefile contain
      superfluous TAB-characters.


Best regards
Uwe





More information about the NeXus-developers mailing list