Bug 4586 - int64_t not defined on Suse9/x86_64 for non-gcc compilers
: int64_t not defined on Suse9/x86_64 for non-gcc compilers
Status: RESOLVED FIXED
: Toolkit Internals
globus_common
: unspecified
: Macintosh All
: P3 normal
: 4.0.5
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2006-07-12 11:21 by
Modified: 2007-06-13 17:40 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2006-07-12 11:21:36
When using intel cc (icc) on suse9/x86_64, globus_soap_messaging fails to
compile because xsd_long.h depends on int64_t.  int64_t is only defined by
sys/types.h on suse9/x86_64 for GNU compilers.  A manual workaround of adding
"typedef long long int64_t" works in xsd_long.h, but we should find a better
solution.  That should probably go into globus_core or globus_common, but I am
filing it here first as it is where the symptom first appears.
------- Comment #1 From 2006-07-12 14:31:44 -------
There's a POSIX header file called <stdint.h> that should define the sized
integer values (though int64_t is not availble if the host doesn't provide a
type).
1) Does this header exist on this platform, and does it define the type? If so
we may be able to get by adding a check for this header to common or core's
configure script.
2) If not, I think we should probably do this check anyway in common or core,
and then if it isn't present define some reasonable types in the configure
script.

joe
------- Comment #2 From 2007-02-08 12:37:13 -------
1)  Yes, it exists and defines the type:
# if __WORDSIZE == 64
typedef long int                int64_t;
# else
__extension__
typedef long long int           int64_t;
# endif
#endif

2)  Mike - can we check for the existence of this and use it in common?  I have
a machine we can test on at Teragrid to validate fixes.
------- Comment #3 From 2007-02-08 17:46:38 -------
Hmm, it looks like core in HEAD already has the work done for this.  I'll get
it into globus_4_0_branch.
------- Comment #4 From 2007-02-09 03:29:50 -------
Added a few lines to HEAD common to include stdint.h and ported all to
globus_4_0_branch.
------- Comment #5 From 2007-02-09 03:32:12 -------
verified broken and then fixed tg-login.sdsc.teragrid.org, let me know if there
are still problems on other hosts.