Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 39725 - e2fsprogs-1.34 fails to compile e2fsck.static (link error) with propolice during emerge system on Sparc
Summary: e2fsprogs-1.34 fails to compile e2fsck.static (link error) with propolice dur...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: Sparc Linux
: High major (vote)
Assignee: Sparc Porters
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-01-28 22:35 UTC by Cory Bell
Modified: 2006-02-04 06:05 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 Cory Bell 2004-01-28 22:35:45 UTC
This is after a stage-1 "bootstrap.sh" and then "emerge system". I saw what looks like a similar thread on the x86 side, but the Sparc glibc/gcc ebuilds are  older than the ones mentioned there. This install was done with -fstack-protector.

Hardware: Ultra60, 2x360MHz, 512MB RAM

Messages below:
gcc -c  -DLOCALEDIR=\"/usr/share/locale\"  -DENABLE_HTREE=1 -DENABLE_SWAPFS=1 -DPACKAGE=\"e2fsprogs\" -DVERSION=\"1.34\" -DHAVE_INTTYPES_H_WITH_UINTMAX=1 -DHAVE_STDINT_H_WITH_UINTMAX=1 -DHAVE_UNSIGNED_LONG_LONG=1 -DSTDC_HEADERS=1 -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DHAVE_UNISTD_H=1 -DHAVE_GETPAGESIZE=1 -DHAVE_MMAP=1 -DINTDIV0_RAISES_SIGFPE=1 -DHAVE_INTTYPES_H=1 -DHAVE_ARGZ_H=1 -DHAVE_LIMITS_H=1 -DHAVE_LOCALE_H=1 -DHAVE_NL_TYPES_H=1 -DHAVE_MALLOC_H=1 -DHAVE_STDDEF_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DHAVE_FEOF_UNLOCKED=1 -DHAVE_FGETS_UNLOCKED=1 -DHAVE_GETC_UNLOCKED=1 -DHAVE_GETCWD=1 -DHAVE_GETEGID=1 -DHAVE_GETEUID=1 -DHAVE_GETGID=1 -DHAVE_GETUID=1 -DHAVE_MEMPCPY=1 -DHAVE_MUNMAP=1 -DHAVE_PUTENV=1 -DHAVE_SETENV=1 -DHAVE_SETLOCALE=1 -DHAVE_STPCPY=1 -DHAVE_STRCASECMP=1 -DHAVE_STRDUP=1 -DHAVE_STRTOUL=1 -DHAVE_TSEARCH=1 -DHAVE___ARGZ_COUNT=1 -DHAVE___ARGZ_STRINGIFY=1 -DHAVE___ARGZ_NEXT=1 -DHAVE_ICONV=1 -DICONV_CONST= -DHAVE_LANGINFO_CODESET=1 -DHAVE_LC_MESSAGES=1 -DENABLE_NLS=1 -DHAVE_GETTEXT=1 -DHAVE_DCGETTEXT=1 -DHAVE_STDLIB_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STDARG_H=1 -DHAVE_ERRNO_H=1 -DHAVE_MALLOC_H=1 -DHAVE_MNTENT_H=1 -DHAVE_PATHS_H=1 -DHAVE_DIRENT_H=1 -DHAVE_GETOPT_H=1 -DHAVE_SETJMP_H=1 -DHAVE_SIGNAL_H=1 -DHAVE_TERMIOS_H=1 -DHAVE_LINUX_FD_H=1 -DHAVE_LINUX_MAJOR_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_MOUNT_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_SYS_SYSMACROS_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_SYS_RESOURCE_H=1 -DHAVE_NET_IF_H=1 -DHAVE_NETINET_IN_H=1 -DHAVE_VPRINTF=1 -DHAVE_RECLEN_DIRENT=1 -DHAVE_TYPE_SSIZE_T=1 -DHAVE_LSEEK64_PROTOTYPE=1 -DSIZEOF_SHORT=2 -DSIZEOF_INT=4 -DSIZEOF_LONG=4 -DSIZEOF_LONG_LONG=8 -DWORDS_BIGENDIAN=1 -DHAVE_GETRUSAGE=1 -DHAVE_LLSEEK=1 -DHAVE_LSEEK64=1 -DHAVE_OPEN64=1 -DHAVE_STRTOULL=1 -DHAVE_STRCASECMP=1 -DHAVE_SRANDOM=1 -DHAVE_FCHOWN=1 -DHAVE_MALLINFO=1 -DHAVE_FDATASYNC=1 -DHAVE_STRNLEN=1 -DHAVE_STRPTIME=1 -DHAVE_SYSCONF=1 -DHAVE_PATHCONF=1 -DHAVE_POSIX_MEMALIGN=1 -DHAVE_MEMALIGN=1 -DHAVE_VALLOC=1 -DHAVE_DLOPEN=1 -DHAVE_EXT2_IOCTLS=1   -fstack-protector -mcpu=ultrasparc -O3 -pipe -DRESOURCE_TRACK  -I../lib -I../lib  rehash.c -o rehash.o
gcc  -o e2fsck.shared dict.o unix.o e2fsck.o super.o pass1.o pass1b.o pass2.o pass3.o pass4.o pass5.o journal.o swapfs.o badblocks.o util.o dirinfo.o dx_dirinfo.o ehandler.o problem.o message.o recovery.o region.o revoke.o ea_refcount.o rehash.o  ../lib/libext2fs.so ../lib/libcom_err.so ../lib/libblkid.so ../lib/libuuid.so
/bin/cp e2fsck.shared e2fsck
gcc  -static -o e2fsck.static dict.o unix.o e2fsck.o super.o pass1.o pass1b.o pass2.o pass3.o pass4.o pass5.o journal.o swapfs.o badblocks.o util.o dirinfo.o dx_dirinfo.o ehandler.o problem.o message.o recovery.o region.o revoke.o ea_refcount.o rehash.o  \
        ../lib/libext2fs.a ../lib/libcom_err.a ../lib/libblkid.a ../lib/libuuid.a
/usr/lib/gcc-lib/sparc-unknown-linux-gnu/3.2.3/../../../libc.a(ssp.o)(.data+0x0): multiple definition of `__guard'
/usr/lib/gcc-lib/sparc-unknown-linux-gnu/3.2.3/libgcc.a(_stack_smash_handler.oS)(.data+0x0): first defined here
/usr/lib/gcc-lib/sparc-unknown-linux-gnu/3.2.3/../../../../sparc-unknown-linux-gnu/bin/ld: Disabling relaxation: it will not work with multiple definitions
/usr/lib/gcc-lib/sparc-unknown-linux-gnu/3.2.3/../../../libc.a(ssp.o)(.text+0xa0): In function `__stack_smash_handler':
: multiple definition of `__stack_smash_handler'
/usr/lib/gcc-lib/sparc-unknown-linux-gnu/3.2.3/libgcc.a(_stack_smash_handler.oS)(.text+0x9c):/var/tmp/portage/gcc-3.2.3-r2/work/gcc-3.2.3/gcc/libgcc2.c:2093: first defined here
/usr/lib/gcc-lib/sparc-unknown-linux-gnu/3.2.3/../../../../sparc-unknown-linux-gnu/bin/ld: Warning: size of symbol `__stack_smash_handler' changed from 448 in /usr/lib/gcc-lib/sparc-unknown-linux-gnu/3.2.3/../../../libc.a(ssp.o) to 340 in /usr/lib/gcc-lib/sparc-unknown-linux-gnu/3.2.3/../../../libc.a(ssp.o)
collect2: ld returned 1 exit status
make[2]: *** [e2fsck.static] Error 1
make[2]: Leaving directory `/var/tmp/portage/e2fsprogs-1.34/work/e2fsprogs-1.34/e2fsck'
make[1]: *** [all-progs-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/e2fsprogs-1.34/work/e2fsprogs-1.34'make: *** [all] Error 2
 
!!! ERROR: sys-fs/e2fsprogs-1.34 failed.
!!! Function src_compile, Line 50, Exitcode 2
!!! (no error message)

Thanks! I'll try anything suggested - there's nothing important on the box yet. I imagine I could just disable propolice, but that would defeat a large part of my purpose in running Gentoo in the first place.

Reproducible: Always
Steps to Reproduce:
1. CFLAGS += "-fstack-protector"
2. bootstrap.sh
3. emerge system

Actual Results:  
Failed to compile e2fsck.static from e2fsprogs-1.34

Expected Results:  
Compile e2fsck.static without errors

# emerge info
Portage 2.0.49-r21 (default-sparc64-1.4, gcc-3.2.3, glibc-2.3.2-r1,2.3.2-r3,
2.4.22-rc2-iso-up)
=================================================================
System uname: 2.4.22-rc2-iso-up sparc64 sun4u
Gentoo Base System version 1.4.3.10
ACCEPT_KEYWORDS="sparc"
AUTOCLEAN="yes"
CFLAGS="-fstack-protector -mcpu=ultrasparc -O3 -pipe"
CHOST="sparc-unknown-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-fstack-protector -mcpu=ultrasparc -O3 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache sandbox"
GENTOO_MIRRORS="http://gentoo.oregonstate.edu
http://www.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="sparc acl adns apache2 berkdb crypt cups curl encode ethereal fastcgi fbcon
foomaticdb gd gdbm gif imagemagick imap imlib innodb ipv6 jpeg kerberos ldap
libwww mad maildir mbox ncurses nls odbc oggvorbis oss pam pdflib perl png
postgres ppds python readline sasl slang snmp speex spell ssl tcpd tiff truetype
unicode xml2 zlib"
Comment 1 solar (RETIRED) gentoo-dev 2004-01-29 18:24:57 UTC
propolice-3.3-7 should fix this.
Comment 2 Cory Bell 2004-01-29 19:44:14 UTC
Although I'm very comfortable with Linux in general, I'm a Gentoo newbie, so be warned, I may ask stupid questions.

The propolice patch just applies to gcc and any given propolice patch will be tied to a specific version of gcc, right? So it sounds like if I want to use propolice I will need to either 1) upgrade to a newer version of gcc or 2) backport the latest propolice to the current gentoo-sparc-approved gcc (if that's even possible).

So, recommendations? Should I wait for a new ebuild to come out, forget propolice for a while, what? Thanks!
Comment 3 Daniel Seyffer 2004-02-20 12:52:02 UTC
Same here on my Ultra 5 during stage2 (sparc64-20040210) when trying to compile sys-fs/e2fsprogs-1.34-r1.


Portage 2.0.50-r1 (default-sparc64-2004.0, gcc-3.2.3,
glibc-2.3.3_pre20040207-r0, 2.4.22-rc2-iso-up)
=================================================================
System uname: 2.4.22-rc2-iso-up sparc64 sun4u
Gentoo Base System version 1.4.3.13
Autoconf: sys-devel/autoconf-2.59-r3
Automake: sys-devel/automake-1.8.2
ACCEPT_KEYWORDS="sparc ~sparc"
AUTOCLEAN="yes"
CFLAGS="-mcpu=ultrasparc -O3 -pipe -fomit-frame-pointer -fstack-protector"
CHOST="sparc-unknown-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-mcpu=ultrasparc -O3 -pipe -fomit-frame-pointer -fstack-protector"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache sandbox"
GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="arts avi berkdb crypt cups encode esd fbcon foomaticdb gdbm gif imlib jpeg kde libwww mad mikmod motif mpeg ncurses nls oggvorbis opengl oss pam pdflib perl png python qt readline sdl slang sparc spell ssl tcpd truetype xml2 xmms xv zlib"


(I now just compiled e2fsprogs without stack-protector. :-/)
Comment 4 Jason Wever (RETIRED) gentoo-dev 2004-03-15 05:24:58 UTC
gcc-3.3.x is now available on regular sparc profiles for users running ~sparc.  try emerging this and let us know how it works for you.
Comment 5 Jason Wever (RETIRED) gentoo-dev 2004-03-26 18:06:37 UTC
Resolving this as fixed as gcc-3.3.3 is now stable on sparc and I've successfully built out a system from stage 1 using -fstack-protector.  If for some reason this continues to plague you, feel free to re-open.