Closed
Bug 78503
Opened 24 years ago
Closed 23 years ago
liblber does not compile on Solaris WS6U2...
Categories
(Directory :: LDAP C SDK, defect, P4)
Tracking
(Not tracked)
RESOLVED
WORKSFORME
mozilla0.9.3
People
(Reporter: roland.mainz, Assigned: roland.mainz)
Details
Attachments
(2 files)
[as discussed on IRC #mozilla]
liblber code does not compile on Solaris 7 SPARC using Sun Workshop 6 Update 2
EarlyAccess2 (http://access1.sun.com/fortedevprod/):
-- snip --
% export CC=/opt/SUNWspro/bin/cc CXX=/opt/SUNWspro/bin/CC CFLAGS="-I/usr/include
-I/usr/local/include" CXXFLAGS="-I/usr/include -I/usr/local/include"
% configure --with-xprint --enable-mathml --enable-svg --enable-xsl
--with-extensions --enable-optimize --enable-nspr-autoconf
[snip]
cd libraries; gmake install
gmake[2]: Entering directory
`/home/mozilla/builds/2001-05-01-08-trunk/objdir_ws6_gtk/directory/c-sdk/ldap/libraries'
cd liblber; gmake install
gmake[3]: Entering directory
`/home/mozilla/builds/2001-05-01-08-trunk/objdir_ws6_gtk/directory/c-sdk/ldap/libraries/liblber'
/opt/SUNWspro/bin/cc -xstrconst -o decode.o -c -I/usr/include
-I/usr/local/include -O -g -KPIC -UNDEBUG -DUSE_AUTOCONF=1 -DDEBUG=1
-DDEBUG_mozilla=1 -DXP_UNIX=1 -DSVR4=1 -DSYSV=1 -D__svr4=1 -D__svr4__=1
-DSOLARIS=1 -D_PR_HAVE_OFF64_T=1 -DHAVE_LCHOWN=1 -DHAVE_STRERROR=1
-D_REENTRANT=1 -D_REENTRANT=1 -DHAVE_POINTER_LOCALTIME_R=1 -DFORCE_PR_LOG
-D_PR_PTHREADS -UHAVE_CVAR_BUILT_ON_SEM -DUSE_WAITPID -DNEEDPROTOS
-DLDAP_REFERRALS -DLDAP_LDBM -DLDAP_SHELL -DLDAP_PASSWD -DLDBM_USE_NDBM
-I../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/include
../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/decode.c
"/usr/include/lber.h", line 258: warning: macro redefined: SAFEMEMCPY
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 97: warning: macro redefined: OLD_LBER_SEQUENCE
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 98: warning: macro redefined: OLD_LBER_SET
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 102: syntax error before or at: LDAP_CALLBACK
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 102: warning: old-style declaration or incorrect type for: LDAP_CALLBACK
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 102: warning: old-style declaration or incorrect type for: IFP
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 102: warning: syntax error: empty declaration
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 107: (struct) tag redeclared: seqorset
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 113: identifier redeclared: Seqorset
current : struct seqorset {unsigned long sos_clen, unsigned long
sos_tag, pointer to char sos_first, pointer to char sos_ptr, pointer to struct
seqorset {..} sos_next}
previous: struct seqorset {pointer to struct berelement {..} sos_ber,
unsigned int sos_clen, unsigned int sos_tag, pointer to char sos_first, pointer
to char sos_ptr, pointer to struct seqorset {..} sos_next} :
"/usr/include/lber.h", line 134
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 118: (struct) tag redeclared: berelement
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 135: warning: macro redefined: NULLBER
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 137: (struct) tag redeclared: sockbuf
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 138: syntax error before or at: LBER_SOCKET
"../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 138: cannot recover from previous errors
cc: acomp failed for
../../../../../../../../src/2001-05-01-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/decode.c
gmake[3]: *** [decode.o] Error 2
gmake[3]: Leaving directory
`/home/mozilla/builds/2001-05-01-08-trunk/objdir_ws6_gtk/directory/c-sdk/ldap/libraries/liblber'
gmake[2]: *** [install] Error 2
gmake[2]: Leaving directory
`/home/mozilla/builds/2001-05-01-08-trunk/objdir_ws6_gtk/directory/c-sdk/ldap/libraries'
gmake[1]: *** [install] Error 2
gmake[1]: Leaving directory
`/home/mozilla/builds/2001-05-01-08-trunk/objdir_ws6_gtk/directory/c-sdk/ldap'
gmake: *** [install] Error 2
-- snip --
Known workarounds:
- Compile with --disable-ldap
- Step into directory and do a "gmake -t" to touch files instead of making them
Going to attach full build logs...
Assignee | ||
Comment 1•24 years ago
|
||
Assignee | ||
Updated•24 years ago
|
Component: Browser-General → LDAP C SDK
Product: Browser → Directory
Comment 3•24 years ago
|
||
Since the immediate problem is on the branch, I'll take this for the moment.
Assignee: mhein → dmose
Comment 4•24 years ago
|
||
Setting priority to P4, TFV Mozilla1.0.
Priority: -- → P4
Target Milestone: --- → mozilla1.0
Assignee | ||
Comment 5•23 years ago
|
||
CC:'ing richb...
Anyone working in this ? The problem is still present... ;-(
Comment 6•23 years ago
|
||
I've sent an email to the engineering manager in the compiler group letting
him know of this problem. I suggest that you attach the -E output from trying
to compile this file, to this bug report. This will help them tremendously in
testing if this problem still exists with the latest Forte 6 U2 bits.
Assignee | ||
Comment 7•23 years ago
|
||
Issue still occurs with 2001-06-18-08-trunk:
-- snip --
% gmake decode.o
/opt/SUNWspro/bin/cc -xstrconst -o decode.o -c -I/usr/include
-I/usr/local/include -O -g -KPIC -UNDEBUG -DUSE_AUTOCONF=1 -DDEBUG=1
-DDEBUG_mozilla=1 -DXP_UNIX=1 -DSVR4=1 -DSYSV=1 -D__svr4=1 -D__svr4__=1
-DSOLARIS=1 -D_PR_HAVE_OFF64_T=1 -DHAVE_LCHOWN=1 -DHAVE_STRERROR=1
-D_REENTRANT=1 -D_REENTRANT=1 -DHAVE_POINTER_LOCALTIME_R=1 -DFORCE_PR_LOG
-D_PR_PTHREADS -UHAVE_CVAR_BUILT_ON_SEM -DUSE_WAITPID -DNEEDPROTOS
-DLDAP_REFERRALS -DLDAP_LDBM -DLDAP_SHELL -DLDAP_PASSWD -DLDBM_USE_NDBM
-I../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/include
../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/decode.c
"/usr/include/lber.h", line 258: warning: macro redefined: SAFEMEMCPY
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 97: warning: macro redefined: OLD_LBER_SEQUENCE
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 98: warning: macro redefined: OLD_LBER_SET
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 102: syntax error before or at: LDAP_CALLBACK
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 102: warning: old-style declaration or incorrect type for: LDAP_CALLBACK
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 102: warning: old-style declaration or incorrect type for: IFP
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 102: warning: syntax error: empty declaration
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 107: (struct) tag redeclared: seqorset
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 113: identifier redeclared: Seqorset
current : struct seqorset {unsigned long sos_clen, unsigned long
sos_tag, pointer to char sos_first, pointer to char sos_ptr, pointer to struct
seqorset {..} sos_next}
previous: struct seqorset {pointer to struct berelement {..} sos_ber,
unsigned int sos_clen, unsigned int sos_tag, pointer to char sos_first, pointer
to char sos_ptr, pointer to struct seqorset {..} sos_next} :
"/usr/include/lber.h", line 134
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 118: (struct) tag redeclared: berelement
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 135: warning: macro redefined: NULLBER
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 137: (struct) tag redeclared: sockbuf
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 138: syntax error before or at: LBER_SOCKET
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 138: cannot recover from previous errors
cc: acomp failed for
../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/decode.c
gmake: *** [decode.o] Error 2
-- snip --
Going to attach output from:
-- snip --
/home/mozilla/builds/2001-06-18-08-trunk/objdir_ws6_gtk/directory/c-sdk/ldap/libraries/liblber%
/opt/SUNWspro/bin/cc
-E -xstrconst -I/usr/include -I/usr/local/include -O -g -KPIC -UNDEBUG
-DUSE_AUTOCONF=1 -DDEBUG=1 -DDEBUG_mozilla=1 -DXP_UNIX=1 -
DSVR4=1 -DSYSV=1 -D__svr4=1 -D__svr4__=1 -DSOLARIS=1 -D_PR_HAVE_OFF64_T=1
-DHAVE_LCHOWN=1 -DHAVE_STRERROR=1 -D_REENTRANT=1 -D_REENT
RANT=1 -DHAVE_POINTER_LOCALTIME_R=1 -DFORCE_PR_LOG -D_PR_PTHREADS
-UHAVE_CVAR_BUILT_ON_SEM -DUSE_WAITPID -DNEEDPROTOS -DLD
AP_REFERRALS -DLDAP_LDBM -DLDAP_SHELL -DLDAP_PASSWD -DLDBM_USE_NDBM
-I../../../../../../../../src/2001-06-18-08-trunk/mozilla
/directory/c-sdk/ldap/include
../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/decod
e.c 2>&1 >xxx
"/usr/include/lber.h", line 258: warning: macro redefined: SAFEMEMCPY
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 97: warning: macro redefined: OLD_LBER_SEQUENCE
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 98: warning: macro redefined: OLD_LBER_SET
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 135: warning: macro redefined: NULLBER
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 175: warning: macro redefined: LBER_HTONL
"../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h",
line 176: warning: macro redefined: LBER_NTOHL
-- snip --
Assignee | ||
Comment 8•23 years ago
|
||
Comment 9•23 years ago
|
||
Roland, add a .i file for this .cpp file as an attachment to this bug.
The Sun compilers guys are ready and waiting for this before they can
proceed. Thankyou.
Comment 10•23 years ago
|
||
Ahh, spoke to soon. Thankyou!
Assignee | ||
Comment 11•23 years ago
|
||
richb:
What is a *.i file ?? Is that CC -E output file insufficient
(http://bugzilla.mozilla.org/showattachment.cgi?attach_id=39153) ?
Comment 12•23 years ago
|
||
The output from -E is what the compiler group call a .i file. Yes,
this is sufficient.
Comment 13•23 years ago
|
||
Fyi. This has been filed in Sun's Bugtraq database as #4472312.
Assignee | ||
Comment 14•23 years ago
|
||
richb:
1. Wanna quote/attach bug #4472312 here for those people who do not have access
to the Sun database, please ?
2. Any ideas if there is a workaround for this issue ? Or will it be fixed in
WS6U2FCS ?
Comment 15•23 years ago
|
||
1. No.
2. If there was, don't you think I would have added it to this bug report?
Assignee | ||
Comment 16•23 years ago
|
||
> If there was, don't you think I would have added it to this bug report?
Ouch... yes... sorry... dumb question. More coffee, please... ;-((
Comment 17•23 years ago
|
||
Here's the evaluation from the Bugtraq bug:
Compiler is absolutely right here.
In your sources you have 2 different typedef's for Seqorset:
System header /usr/include/lber.h
=========
typedef struct seqorset {
BerElement *sos_ber;
unsigned int sos_clen;
unsigned int sos_tag;
char *sos_first;
char *sos_ptr;
struct seqorset *sos_next;
} Seqorset;
=========
Conflicts with user header
../../../../../../../../src/2001-06-18-08-trunk/mozilla/directory/c-sdk/ldap/libraries/liblber/lber-int.h
=========
typedef struct seqorset {
unsigned long sos_clen;
unsigned long sos_tag;
char *sos_first;
char *sos_ptr;
struct seqorset *sos_next;
} Seqorset;
=========
What is funny that compiler tells EXACTLY what happens here.
xxxxx: , line 113: identifier redeclared: Seqorset
current : struct seqorset {unsigned long sos_clen, unsigned long
sos_tag, pointer to char sos_first, pointer to char sos_ptr, pointer to struct
seqorset {..} sos_next}
previous: struct seqorset {pointer to struct berelement {..} sos_ber,
unsigned int sos_clen, unsigned int sos_tag, pointer to char sos_first, pointer
to char sos_ptr, pointer to struct seqorset {..} sos_next} :
"/usr/include/lber.h", line 134
Users could just trust compiler sometimes.
Not a bug - user error.
Assignee | ||
Comment 18•23 years ago
|
||
> Users could just trust compiler sometimes.
:-)
WS 6 Update 1 and gcc 2.95.x seems to swallow this code without any problems...
this makes people think "bug in EA version - fix it"... :-)
> Not a bug - user error.
:-)))
--> dmose ??
----
1. richb: thanks for the infos... :-)
2. Setting target milestone to 0.9.3 - dmose: is that OK for you ?
Target Milestone: mozilla1.0 → mozilla0.9.3
Comment 19•23 years ago
|
||
You are mixing Solaris shipped header files with Netscape/iPlanet LDAP C SDK
files. Do not rely on files in /usr/include for any ldap related header files.
Assignee | ||
Comment 20•23 years ago
|
||
dmose overburned, stealing this bug from him and hunt this xx!!@@@-issue
myself...
Assignee: dmose → Roland.Mainz
Comment 21•23 years ago
|
||
Why are -I/usr/include & -I/usr/local/include being explicitly set in CFLAGs &
CXXFLAGS when calling configure? The compiler should search those directories
by default. It seems as though you're just asking for trouble there (and found it).
Assignee | ||
Comment 22•23 years ago
|
||
Good question...
...answer: Long long ago the build failed without that trick... maybe it's
"gone" now... I'll try it later this day or tomorrow...
Status: NEW → ASSIGNED
Assignee | ||
Comment 23•23 years ago
|
||
xx@@!!xx... ;-(
It was the 'export CFLAGS="-I/usr/include -I/usr/local/include"
CXXFLAGS="-I/usr/include -I/usr/local/include"' stuff in my build script which
caused this issue.
Closing bug, marking it as "WORKS FOR ME"...
Maybe this bug nominates me as the biggest i***t of the week... ;-(
Sorry for the trouble I caused... ;-(
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•