[EDG eccp/Solaris 10] error compiling assert.cpp
------------------------------------------------
Key: STDCXX-81
URL: http://issues.apache.org/jira/browse/STDCXX-81
Project: STDCXX
Type: Bug
Components: Build
Versions: 4.1.2
Environment: EDG eccp 3.5, 3.6/Solaris 10
Reporter: Martin Sebor
Assigned to: Martin Sebor
Priority: Critical
Fix For: 4.1.3
>From
>http://mail-archives.apache.org/mod_mbox/incubator-stdcxx-dev/200512.mbox/[EMAIL
> PROTECTED]:
-------- Original Message --------
Subject: Re: stdcxx question
Date: Fri, 02 Dec 2005 10:50:08 -0700
From: Martin Sebor <[EMAIL PROTECTED]>
To: John Benito <[EMAIL PROTECTED]>
CC: [email protected]
References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL
PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL
PROTECTED]> <[EMAIL PROTECTED]>
John Benito wrote:
> Martin,
>
> Just to let you know, while trying the 11s build on Solaris 5.10 using
> EDG 3.5 over GCC 3.4.3 I am getting the following diagnostics. Will
> look into away to include uint64_t this afternoon, unless you have
> already seen this.
Thanks for the heads up!
I haven't seen this error yet. In fact, I haven't even got this far.
I ran into the error below during configuration (removing -lm from
the link line let me proceed).
The error you are seeing is triggered by an #include directive in
assert.cpp for the <ucontext.h> header (in strict mode only):
$ cat t.cpp && eccp -A t.cpp
#include <ucontext.h>
"/usr/include/sys/regset.h", line 304: error: identifier "uint64_t" is
undefined
uint64_t fpu_dregs[32]; /* 32 doubles */
^
"/usr/include/sys/regset.h", line 307: error: identifier "uint64_t" is
undefined
Since this works fine in Solaris 9 I suspect that eccp hasn't been
ported to Solaris 10. Let me check with EDG to see what they have
to say about it.
Martin
$ nice gmake -C../include
gmake: Entering directory `/build/sebor/eccp-3.6-11s/include'
gmake config
gmake[1]: Entering directory `/build/sebor/eccp-3.6-11s/include'
configuring for eccp-3.6 on sunos-5.10-sparc
checking if compiler is sane ok
checking if linker is sane no
int main () { return 0; }
eccp -c -A -x --template_directory=/build/sebor/eccp-3.6-11s/lib -g
--display_error_number --remarks --diag_suppress
193,236,340,401,261,479,487,678,679,815 -D_RWSTDDEBUG
-D_RWSTD_USE_CONFIG -I. a.cpp
eccp a.o --template_directory=/build/sebor/eccp-3.6-11s/lib -lm -o a.out
library "m" does not exist in the specified library directories
C++ prelinker: error: command line error
gmake[1]: *** [sane] Error 1
>
> eccp -c -I/home/benito/stdcxx-2005-07-19/include/ansi
> -D_RWSTD_USE_CONFIG -I/home/benito/stdcxx-11s/include
> -I/home/benito/stdcxx-2005-07-19/include -A -x
> --template_directory=/home/benito/stdcxx-11s/lib --display_error_number
> --remarks --diag_suppress 193,236,340,401,261,479,487,678,679,815
> /home/benito/stdcxx-2005-07-19/src/assert.cpp
> "/usr/include/sys/regset.h", line 304: error #20: identifier "uint64_t" is
> undefined
> uint64_t fpu_dregs[32]; /* 32 doubles */
> ^
> "/usr/include/sys/regset.h", line 307: error #20: identifier "uint64_t" is
> undefined
> uint64_t fpu_fsr; /* FPU status register */
> ^
> 2 errors detected in the compilation of
> "/home/benito/stdcxx-2005-07-19/src/assert.cpp".
>
> Thanks,
>
> jb -
>
> Martin Sebor wrote:
>
>> I would suggest
>>
>> make BUILDDIR=/home/benito/stdcxx-11s \
>> BUILDTYPE=11s \
>> CONFIG=eccp.config
>>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira