Bug 83775 - rpm 4.1 fails to compile on Solaris 8
Summary: rpm 4.1 fails to compile on Solaris 8
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: rpm
Version: 8.0
Hardware: sparc
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jeff Johnson
QA Contact: Mike McLean
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2003-02-08 07:18 UTC by Donnie Cranford
Modified: 2007-04-18 16:50 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2003-02-08 15:40:58 UTC
Embargoed:


Attachments (Terms of Use)

Description Donnie Cranford 2003-02-08 07:18:30 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20030203

Description of problem:
Compiler - Sun One Compiler (Forte 7)

gmake 3.79.1

# uname -a
SunOS DEATHSTARII 5.8 Generic_108528-17 sun4u sparc SUNW,Sun-Blade-100
[clip]

/opt/SUNWspro/bin/cc -DHAVE_CONFIG_H -I. -I. -I.. -I. -I.. -I../popt -I../zlib
-g -c fts.c  -KPIC -DPIC -o fts.o
"fts.c", line 135: warning: implicit function declaration: __errno_location
"fts.c", line 135: cannot dereference non-pointer type
"fts.c", line 163: syntax error before or at: {
"fts.c", line 163: warning: implicit function declaration: __typeof__
"fts.c", line 163: syntax error before or at: _b
"fts.c", line 163: undefined symbol: _a
"fts.c", line 163: undefined symbol: _b
"fts.c", line 163: cannot recover from previous errors
cc: acomp failed for fts.c
gmake[2]: *** [fts.lo] Error 1
gmake[2]: Leaving directory `/tmp/rpm-4.1/rpmio'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/tmp/rpm-4.1'
gmake: *** [all] Error 2




Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1../configure
2.gmake
3.
    

Actual Results:  /opt/SUNWspro/bin/cc -DHAVE_CONFIG_H -I. -I. -I.. -I. -I..
-I../popt -I../zlib -g -c fts.c  -KPIC -DPIC -o fts.o
"fts.c", line 135: warning: implicit function declaration: __errno_location
"fts.c", line 135: cannot dereference non-pointer type
"fts.c", line 163: syntax error before or at: {
"fts.c", line 163: warning: implicit function declaration: __typeof__
"fts.c", line 163: syntax error before or at: _b
"fts.c", line 163: undefined symbol: _a
"fts.c", line 163: undefined symbol: _b
"fts.c", line 163: cannot recover from previous errors
cc: acomp failed for fts.c
gmake[2]: *** [fts.lo] Error 1
gmake[2]: Leaving directory `/tmp/rpm-4.1/rpmio'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/tmp/rpm-4.1'
gmake: *** [all] Error 2




Expected Results:  compile should have ended succesfully

Additional info:

I have not test this with GCC nor on rpm 4.0.4 yet

I will be testing that and will update this bug as soon as I get more info

Comment 1 Jeff Johnson 2003-02-08 15:40:58 UTC
There's a patch in rpm-4.2 that is claimed to compile
on Solaris.

Comment 2 Greg Hudson 2003-03-27 20:50:27 UTC
The elfutils in RPM 4.2-0.70 and RPM 4.2-1 don't even vaguely compile for me on
Solaris 9.  I get:

gcc -D_GNU_SOURCE -DHAVE_CONFIG_H -I. -I. -I.. -I./../libelf -I.. 
-I/usr/athena/include -D_REENTRANT -Wall -Werror -g -D_GNU_SOURCE -D_REENTRANT
-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes
-Wno-char-subscripts -c `test -f 'xstrdup.c' || echo './'`xstrdup.c
In file included from xstrdup.c:18:
system.h:17:20: stdint.h: No such file or directory

and associated errors from uint32_t not being defined.  If I change stdint.h to
sys/inttypes.h (a Solaris-ism, as opposed to a C99ism) there and in crc32.c, I
get problems because xstrndup.c uses strnlen() and mempcpy().  xmalloc.c uses
<error.h> and error().  next_prime.c fails to compile because next_prime isn't
prototyped (I'm surprised that doesn't fail on all platforms).  Then libelf
fails catastrophically: elf.h wants features.h as well as stdint.h and also uses
__BEGIN_DECLS and __END_DECLS; libelfP.h uses a "visibility" attribute which gcc
doesn't seem to understand... the list goes on.

I'm using gcc 3.2.1.  I extracted the source from rpm-4.2-1.src.rpm because I
didn't find any .tar.gz files in the test-4.2 directory.  Am I missing anything?


Comment 3 Michael Ngarimu 2003-08-05 20:36:35 UTC
So what does Rawhide have to do with this?

I grabbed the source RPM for Rawhide as found on ftp.redhat.com as of this date 
(appears to be 4.2), extracted the tar.gz file, ./configure, gmake and it still 
fails with stdint.h, just as ghudson said.



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