[Xymon] LFS support check failed for standard file support - xymon 3.0

Henrik Størner henrik at hswn.dk
Mon Mar 14 16:55:16 CET 2011


>   MAKE="gmake" sh -x ./build/lfs.sh
> + echo Checking for Large File Support ...
> Checking for Large File Support ...
> + cd build
> + gmake -f Makefile.test-lfs clean
> + uname -s
> + tr [/] [_]
> OS=SunOS
> gmake: *** [clean] Error 2
> + gmake -f Makefile.test-lfs
> gmake: Nothing to be done for `all'.
> + [ 0 -ne 0 ]
> + ./test-lfs-std 4
> STDRES=4:1:-78191077919555584
> + test 4:1:-78191077919555584 != 4:1:0 -a 4:1:-78191077919555584 != 8:1:0
> + echo ERROR: LFS support check failed for standard file support
> ERROR: LFS support check failed for standard file support
> + exit 1

This is bizarre.

What this does is that it builds a tiny test program using standard 
compiler-flags first, and then the flags that you would normally use 
when compiling for large file support (LFS).

When compiled without LFS, I expect the normal file offset "off_t" 
variable to be 32 bits (4 bytes); with LFS, I would expect it to be 
64-bits (8 bytes). To test that, the program prints out

1) The value of "sizeof(off_t)"
2) A boolean (0/1) value to see if sizeof(off_t) is what I expect
3) The value of an off_t variable that has been cleared to zero using 
memset() - we need to print these values occasionally (e.g. for keeping 
track of how long into a logfile we have already scanned).

1) and 2) look OK, but the value prints as "-7819...." There is no way I 
can see how that can happen - that variable has been cleared to 0 just a 
few lines above the print-statement.

Just to see if I'm completely wrong, could you try running this for me:

   cd build
   rm test-lfs-std test-lfs-lfs
   OS=SunOS gmake -f Makefile.test-lfs
   ./test-lfs-std 4
   ./test-lfs-lfs 8

The output from the last line would be interesting.


Thanks,
Henrik



More information about the Xymon mailing list