gpg 1.0.3 on Solaris w/ large file support
Lars Hecking
lhecking at nmrc.ie
Tue Oct 17 14:10:12 CEST 2000
[Please Cc: replies, I'm not on the list.]
On Wed, 4 Oct 2000 15:27:15 +0200 (CEST), Nils Ellmenreich wrote:
> I've tried to install the generic 1.0.3 on both, Solaris 2.6 and 8. It
> doesn't work out of the box as util/iobuf.c fails to find the 64bit data
> structure definitions from <sys/stat.h>.
The same problem exists on HP-UX.
> This is because Solaris
> requires the compilation flag -D_LARGEFILE64_SOURCE to support these
> functions.
From my understanding of large file support, this is not correct.
According http://ftp.sas.com/standards/large.file/x_open.20Mar96.html,
_LARGEFILE64_SOURCE and the *64() functions/ *64 structs are part of
a transitional ABI, and are only required if one mixes 32/64bit types
in the same program.
I have a first cut at a patch for gnupg-1.0.3b that adds large file support
at configure level. But there is still work to be done (or has it been
done already?) in util/iobuf.c. I think that
- the redefinition of fopen() and fstat() must go
- u32 iobuf_get_filelength( IOBUF a ) must be rewritten to
not explicitly return u32, but a different type that is 64 bit
on 64 bit platforms
- accordingly, the struct stat64 and
"#if defined (HAVE_FOPEN64) && defined (HAVE_FSTAT64)" stuff in
iobuf_get_filelength() must go.
I could be totally off track here, of course ;-)
Will I post my patch here? I have no ftp site to put it on.
It compiles nicely on 32/64bit Solaris, but doesn't on IRIX/HP-UX/DU.
I _think_ that I have problems compiling gpg on these platforms anyway ...
> Further more, even with this flag 1.0.3 doesn't compile on my Solaris
> 2.8 machines with linke problems with
[...]
I think this worked for me. May be a gcc installation problem.
More information about the Gnupg-devel
mailing list