Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 103098 - libperl fails to compile C compiler does not support function prototypes
Summary: libperl fails to compile C compiler does not support function prototypes
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: x86 Linux
: High blocker (vote)
Assignee: Elfyn McBratney (beu) (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-08-19 18:13 UTC by William L. Thomson Jr. (RETIRED)
Modified: 2005-09-06 06:16 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description William L. Thomson Jr. (RETIRED) gentoo-dev 2005-08-19 18:13:33 UTC
Below is the output I get if I try to compile either libperl 5.8.7 or the
version I currently have installed version 5.8.6. I tried both with both gcc
3.3.4 and 3.4.4. Each time I get the error below.

root@mm ~ # emerge -uDq world
Calculating world dependencies ...done!
>>> emerge (1 of 66) sys-devel/libperl-5.8.7 to /
QA Notice: USE Flag 'userland_Darwin' not in IUSE for sys-devel/libperl-5.8.7
>>> md5 files   ;-) libperl-5.8.7.ebuild
>>> md5 files   ;-) libperl-5.8.5-r1.ebuild
>>> md5 files   ;-) libperl-5.8.5.ebuild
>>> md5 files   ;-) libperl-5.8.6-r1.ebuild
>>> md5 files   ;-) libperl-5.8.6.ebuild
>>> md5 files   ;-) files/digest-libperl-5.8.7
>>> md5 files   ;-) files/libperl-5.8.2-uclibc.patch
>>> md5 files   ;-) files/digest-libperl-5.8.5
>>> md5 files   ;-) files/digest-libperl-5.8.6-r1
>>> md5 files   ;-) files/libperl-noksh.patch
>>> md5 files   ;-) files/digest-libperl-5.8.5-r1
>>> md5 files   ;-) files/digest-libperl-5.8.6
>>> md5 files   ;-) files/libperl-create-libperl-soname.patch
>>> md5 files   ;-) files/libperl-reorder-INC.patch
>>> md5 files   ;-) files/libperl-uclibc.patch
>>> md5 src_uri ;-) perl-5.8.7.tar.bz2
QA Notice: USE Flag 'userland_Darwin' not in IUSE for sys-devel/libperl-5.8.7
 *
 * PLEASE NOTE: If you want to compile perl-5.8 with
 * threading enabled , you must restart this emerge
 * with USE=ithreads emerge....
 * Threading is not supported by all applications
 * that compile against perl. You use threading at
 * your own discretion.
 *
QA Notice: USE Flag 'userland_Darwin' not in IUSE for sys-devel/libperl-5.8.7
>>> Unpacking source...
>>> Unpacking perl-5.8.7.tar.bz2 to /media/portage/tmp/portage/libperl-5.8.7/work
 * Applying libperl-create-libperl-soname.patch ...                       [ ok ]
 * Applying libperl-noksh.patch ...                                       [ ok ]
 * Applying libperl-reorder-INC.patch ...                                 [ ok ]
>>> Source unpacked.
QA Notice: USE Flag 'userland_Darwin' not in IUSE for sys-devel/libperl-5.8.7
QA Notice: USE Flag 'elibc_uclibc' not in IUSE for sys-devel/libperl-5.8.7
 * myarch: i586-linux
First let's make sure your kit is complete.  Checking...
Locating common programs...
Checking compatibility between /bin/echo and builtin echo (if any)...
Symbolic links are supported.
Checking how to test for symbolic links...
You can test for symbolic links with 'test -h'.
Good, your tr supports [:lower:] and [:upper:] to convert case.
Using [:upper:] and [:lower:] to convert case.
3b1          dos_djgpp       irix_6_0      nonstopux     sunos_4_0
aix          dynix           irix_6_1      openbsd       sunos_4_1
aix_3        dynixptx        isc           opus          super-ux
aix_4        epix            isc_2         os2           svr4
altos486     esix4           linux         os390         svr5
amigaos      fps             lynxos        os400         ti1500
apollo       freebsd         machten       posix-bc      titanos
atheos       genix           machten_2     powerux       ultrix_4
aux_3        gnu             mint          qnx           umips
beos         gnukfreebsd     mips          rhapsody      unicos
bsdos        gnuknetbsd      mpc           sco           unicosmk
convexos     greenhills      mpeix         sco_2_3_0     unisysdynix
cxux         hpux            ncr_tower     sco_2_3_1     utekv
cygwin       i386            netbsd        sco_2_3_2     uts
darwin       interix         newsos4       sco_2_3_3     uwin
dcosx        irix_4          next_3        sco_2_3_4     vmesa
dec_osf      irix_5          next_3_0      solaris_2     vos
dgux         irix_6          next_4        stellar
Which of these apply, if any? [linux]

You appear to have ELF support.  I'll try to use it for dynamic loading.
If dynamic loading doesn't work, read hints/linux.sh for further information.
Operating system name? [linux]
Operating system version? [2.6.12-gentoo]
Build Perl for SOCKS? [n]
Use the PerlIO abstraction layer? [y]
Build a threading Perl? [n]
Build Perl for multiplicity? [n]
Use which C compiler? [i586-pc-linux-gnu-gcc]
Checking for GNU cc in disguise and/or its version number...
Now, how can we feed standard input to your C preprocessor...
Directories to use for library searches? [/usr/local/lib /lib /usr/lib]
What is the file extension used for shared libraries? [so]
Try to use long doubles if available? [n]
Checking for optional libraries...
What libraries to use?
[-lnsl -lndbm -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc]
What optimizer/debugger flag should be used? [-O2 -march=k6-2 -pipe]
Any additional cc flags? [-fno-strict-aliasing -pipe]
Let me guess what the preprocessor flags are...
Any additional ld flags (NOT including libraries)? [ -L/usr/local/lib]
Checking your choice of C compiler and flags for coherency...
Computing filename position in cpp output for #include directives...
<stdlib.h> found.
Checking to see how big your integers are...
Checking to see if you have long long...
Checking to see how big your long longs are...
<inttypes.h> found.
Checking to see if you have int64_t...
Checking which 64-bit integer type we could use...
We could use 'long long' for 64-bit integers.
Try to use 64-bit integers, if available? [n]
Try to use maximal 64-bit support, if available? [n]
Checking to see how big your double precision numbers are...
Checking to see if you have long double...
Checking to see how big your long doubles are...
What is your architecture name [i586-linux]
Perlio selected.
Installation prefix to use? (~name ok) [/usr]
AFS does not seem to be running...
What installation prefix should I use for installing files? (~name ok)
[/usr]
Getting the current patchlevel...
Pathname where the private library files will reside? (~name ok)
[/usr/lib/perl5/5.8.7]
Where do you want to put the public architecture-dependent libraries? (~name ok)
[/usr/lib/perl5/5.8.7/i586-linux]
Other username to test security of setuid scripts with? [none]
Well, the recommended value is *not* secure.
Does your kernel have *secure* setuid scripts? [n]
Do you want to do setuid/setgid emulation? [y]
<malloc.h> found.
Checking to see how well your C compiler groks the void type...
Hmm, your compiler has some difficulty with void. Checking further...
  Support flag bits are:
    1: basic void declarations.
    2: arrays of pointers to functions returning void.
    4: operations between pointers to and addresses of void functions.
    8: generic void pointers.
Your void support flags add up to what? [0]
Checking to see how big your pointers are...
Do you wish to wrap malloc calls to protect against potential overflows? [y]
Do you wish to attempt to use the malloc that comes with perl5? [n]
Your system wants malloc to return 'char *', it would seem.
Your system uses int free(), it would seem.
Installation prefix to use for add-on modules and utilities? (~name ok)
[/usr]
Pathname for the site-specific library files? (~name ok)
[/usr/lib/perl5/site_perl/5.8.7]
Pathname for the site-specific architecture-dependent library files? (~name ok)
[/usr/lib/perl5/site_perl/5.8.7/i586-linux]
Do you want to configure vendor-specific add-on directories? [y]
Installation prefix to use for vendor-supplied add-ons? (~name ok) [/usr]
Pathname for the vendor-supplied library files? (~name ok)
[/usr/lib/perl5/vendor_perl/5.8.7]
Pathname for vendor-supplied architecture-dependent files? (~name ok)
[/usr/lib/perl5/vendor_perl/5.8.7/i586-linux]
Colon-separated list of additional directories for perl to search? [none]
Checking out function prototypes...

Configure:  FATAL ERROR:
This version of perl5 can only be compiled by a compiler that
understands function prototypes.  Unfortunately, your C compiler
        i586-pc-linux-gnu-gcc -fno-strict-aliasing -pipe
doesn't seem to understand them.  Sorry about that.

If GNU cc is available for your system, perhaps you could try that instead.

Eventually, we hope to support building Perl with pre-ANSI compilers.
If you would like to help in that effort, please contact <perlbug@perl.org>.

Aborting Configure now.

!!! ERROR: sys-devel/libperl-5.8.7 failed.
!!! Function src_compile, Line 231, Exitcode 2
!!! (no error message)
!!! If you need support, post the topmost build error, NOT this status message.

root@mm ~ # gcc-config -l
[1] i586-pc-linux-gnu-3.3.4 *
[2] i586-pc-linux-gnu-3.4.4
[3] i586-pc-linux-gnu-3.4.4-hardened
[4] i586-pc-linux-gnu-3.4.4-hardenednopie
[5] i586-pc-linux-gnu-3.4.4-hardenednopiessp
[6] i586-pc-linux-gnu-3.4.4-hardenednossp

root@mm ~ # emerge info
Portage 2.0.51.20-r5 (!/usr/portage/profiles/default-linux/x86/2005.0,
gcc-3.3.4, glibc-2.3.5-r1, 2.6.12-gentoo i586)
=================================================================
System uname: 2.6.12-gentoo i586 AMD-K6(tm) 3D processor
Gentoo Base System version 1.6.10
distcc 2.18.3 i586-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
dev-lang/python:     2.2.3-r5, 2.3.5
sys-apps/sandbox:    1.2.3
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.14
virtual/os-headers:  2.4.19-r1, 2.6.11-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i586-pc-linux-gnu"
CFLAGS="-O2 -march=k6-2 -pipe"
CHOST="i586-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.1/share/config
/usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb
/usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=k6-2 -pipe"
DISTDIR="/media/portage/distfiles"
FEATURES="autoconfig distcc distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.mirrors.pair.com/ http://gentoo.seren.com/gentoo
http://gentoo.noved.org/ http://gentoo.chem.wisc.edu/gentoo/
http://cudlug.cudenver.edu/gentoo/ http://gentoo.ccccom.com
http://oss.redundant.com/pub/gentoo http://mirrors.tds.net/gentoo
http://gentoo.netnitco.net http://mirror.tucdemonic.org/gentoo/
http://mirror.clarkson.edu/pub/distributions/gentoo/ http://128.213.5.34/gentoo/"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/media/portage/tmp"
PORTDIR="/media/portage"
SYNC="rsync://dev.obsidian-studios.com/portage"
USE="x86 3dnow X aalib alsa avi crypt dvd dvdread eds gdbm gstreamer gtk2 imlib
mad mikmod mmx motif mp3 mpeg ncurses nls ogg oggvorbis opengl pam perl python
quicktime readline samba sdl slang snmp spell ssl tcpd v4l2 vorbis xml2 xmms xv
zlib zvbi userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2005-09-04 04:12:28 UTC
Mass re-assign.
Comment 2 William L. Thomson Jr. (RETIRED) gentoo-dev 2005-09-06 06:16:56 UTC
After some time, I synced again. A few other packages showed up as needing to be
upgraded before libperl. Which after they were updated I was successfully able
to  emerge libperl.