Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 57225 - compile of usermode-source-2.4.24-r6 fails with duplicate sscanf and strpbrk defs
Summary: compile of usermode-source-2.4.24-r6 fails with duplicate sscanf and strpbrk ...
Status: RESOLVED DUPLICATE of bug 49277
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: x86-kernel@gentoo.org (DEPRECATED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-07-15 14:10 UTC by Venkat Manakkal
Modified: 2005-07-17 13:06 UTC (History)
0 users

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 Venkat Manakkal 2004-07-15 14:10:42 UTC
Compiling the latest version of usermode-sources fails with either the defaults in menuconfig or with similar settings I have used for earlier versions.

emerge --info results below.

Also, it would be nice to have a usermode-host-sources, for which I will submit an ebuild as a seperate bug.



Reproducible: Always
Steps to Reproduce:
1. emerge sync; emerge usermode-sources
2. make menuconfig ARCH=um [use the defaults, exit and save]; make dep ARCH=um
3. make linux ARCH=um
	
I noticed the make dep step was not in the http://www.gentoo.org/doc/en/uml.xml instructions but omitting that step did not make a difference.
Actual Results:  
_ -Ui386 -DUM_FASTCALL -g -D__arch_um__ -DSUBARCH=\"i386\" 
-D_LARGEFILE64_SOURCE  -I/usr/src/uml/linux-2.4.24-uml1-r6/arch/um/include 
-I/usr/src/uml/linux-2.4.24-uml1-r6/arch/um/kernel/tt/include 
-I/usr/src/uml/linux-2.4.24-uml1-r6/arch/um/kernel/skas/include -D_GNU_SOURCE -c -o 
tuntap_user.o tuntap_user.c 
ld  -r -o tuntap.o tuntap_kern.o tuntap_user.o 
rm -f drivers.o 
ld  -r -o drivers.o ethertap.o tuntap.o 
make[2]: Leaving directory 
`/usr/src/uml/linux-2.4.24-uml1-r6/arch/um/os-Linux/drivers' 
make[1]: Leaving directory 
`/usr/src/uml/linux-2.4.24-uml1-r6/arch/um/os-Linux/drivers' 
ld -r  init/main.o init/version.o init/do_mounts.o \ 
        --start-group \ 
        kernel/kernel.o mm/mm.o fs/fs.o ipc/ipc.o arch/um/kernel/built-in.o 
arch/um/sys-i386/built-in.o arch/um/os-Linux/built-in.o \ 
         drivers/char/char.o drivers/block/block.o drivers/misc/misc.o drivers/net/net.o 
drivers/scsi/scsidrv.o drivers/sound/sounddrivers.o drivers/mtd/mtdlink.o 
drivers/media/media.o arch/um/fs/built-in.o arch/um/drivers/built-in.o 
arch/um/os-Linux/drivers/drivers.o \ 
        net/network.o \ 
        /usr/src/uml/linux-2.4.24-uml1-r6/lib/lib.a \ 
        --end-group \ 
        -o vmlinux 
nm vmlinux | grep -v '\(compiled\)\|\(\.o$\)\|\( [aUw] \)\|\(\.\.ng$\)\|\(LASH[RL]DI\)' | 
sort > System.map 
pages=$(( 1 << 2 )) ; \ 
m4 -DSTART=$((0xc0000000 - ((0 + 1) * 0x20000000))) -DELF_ARCH=i386 \ 
        -DELF_FORMAT=elf32-i386 -DMODE_TT \ 
        -DKERNEL_STACK_SIZE=$(( 4096 * $pages )) arch/um/link.ld.in > arch/um/link.ld 
mv vmlinux vmlinux.o 
gcc -Wl,-T,arch/um/link.ld -static -Wl,--wrap,malloc -Wl,--wrap,free -Wl,--wrap,calloc \ 
        -o linux arch/um/main.o vmlinux.o -L/usr/lib -lutil 
vmlinux.o(.text+0x162450): In function `sscanf': 
/usr/src/uml/linux-2.4.24-uml1-r6/lib/vsprintf.c:718: multiple definition of `sscanf' 
arch/um/kernel/tt/unmap_fin.o(.text+0x2c9d8): first defined here 
vmlinux.o(.text+0x161440): In function `strpbrk': 
/usr/src/uml/linux-2.4.24-uml1-r6/lib/string.c:280: multiple definition of `strpbrk' 
arch/um/kernel/tt/unmap_fin.o(.text+0x2ebc0): first defined here 
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size 
of symbol `strpbrk' changed from 179 in arch/um/kernel/tt/unmap_fin.o to 82 in 
vmlinux.o 
collect2: ld returned 1 exit status 
make: *** [linux] Error 1 
 

Expected Results:  
 

rayServers linux # emerge --info 
Portage 2.0.50-r9 (hardened-x86-2004.0, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.6) 
================================================================= 
System uname: 2.6.6 i686 Intel(R) Pentium(R) 4 CPU 2.80GHz 
Gentoo Base System version 1.4.16 
Autoconf: sys-devel/autoconf-2.59-r3 
Automake: sys-devel/automake-1.8.3 
ACCEPT_KEYWORDS="x86" 
AUTOCLEAN="yes" 
CFLAGS="-O2 -march=pentium4 -fstack-protector -fomit-frame-pointer" 
CHOST="i686-pc-linux-gnu" 
COMPILER="gcc3" 
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/alias /var/qmail/control" 
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" 
CXXFLAGS="-O2 -mcpu=i686 -pipe" 
DISTDIR="/usr/portage/distfiles" 
FEATURES="autoaddcvs ccache sandbox sfperms strict" 
GENTOO_MIRRORS="http://gentoo.oregonstate.edu 
http://distro.ibiblio.org/pub/Linux/distributions/gentoo" 
MAKEOPTS="-j2" 
PKGDIR="/usr/portage/packages" 
PORTAGE_TMPDIR="/var/tmp" 
PORTDIR="/usr/portage" 
PORTDIR_OVERLAY="/usr/local/portage" 
SYNC="rsync://rsync.gentoo.org/gentoo-portage" 
USE="3dnow X acpi apache2 berkdb crypt cups curl dvd dvdr emacs evo fam fax flash 
freetype gd gdbm gif gmp gpm gtk hardened idea imap java javamail javascript jboss 
jdepend jikes jmx jpeg libgda libwww md5sum memlimit mmx mpeg mpeg4 mysql 
ncurses nls nntp odbc opengl pam pdflib perl php pic pie png propolice python readline 
sis spell ssl tcpd threads tiff truetype x86 xml xml2 zlib"
Comment 1 Tim Yamin (RETIRED) gentoo-dev 2004-07-21 06:11:40 UTC
Does usermode-sources-2.4.26 have this issue?
Comment 2 Venkat Manakkal 2004-07-21 18:34:41 UTC
> Does usermode-sources-2.4.26 have this issue?

Yes.  Please see below. Could this be because of a hardened compiler?:

gcc -D__KERNEL__ -I/usr/src/uml/linux-2.4.26-uml1-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common  -U__i386__ -Ui386 -g -D__arch_um__ -DSUBARCH="i386" -D_LARGEFILE64_SOURCE -I/usr/src/uml/linux-2.4.26-uml1-r3/arch/um/include -Derrno=kernel_errno -I/usr/src/uml/linux-2.4.26-uml1-r3/arch/um/kernel/tt/include -I/usr/src/uml/linux-2.4.26-uml1-r3/arch/um/kernel/skas/include   -nostdinc -iwithprefix include -DKBUILD_BASENAME=tuntap_kern  -c -o tuntap_kern.o tuntap_kern.c
gcc   -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -U__i386__ -Ui386 -g -D__arch_um__ -DSUBARCH=\"i386\" -D_LARGEFILE64_SOURCE  -I/usr/src/uml/linux-2.4.26-uml1-r3/arch/um/include -I/usr/src/uml/linux-2.4.26-uml1-r3/arch/um/kernel/tt/include -I/usr/src/uml/linux-2.4.26-uml1-r3/arch/um/kernel/skas/include -D_GNU_SOURCE -c -o tuntap_user.o tuntap_user.c
ld  -r -o tuntap.o tuntap_kern.o tuntap_user.o
rm -f drivers.o
ld   -r -o drivers.o ethertap.o tuntap.o
make[2]: Leaving directory `/usr/src/uml/linux-2.4.26-uml1-r3/arch/um/os-Linux/drivers'
make[1]: Leaving directory `/usr/src/uml/linux-2.4.26-uml1-r3/arch/um/os-Linux/drivers'
ld -r  init/main.o init/version.o init/do_mounts.o \
        --start-group \
        kernel/kernel.o mm/mm.o fs/fs.o ipc/ipc.o arch/um/kernel/built-in.o arch/um/sys-i386/built-in.o arch/um/os-Linux/built-in.o \
         drivers/char/char.o drivers/block/block.o drivers/misc/misc.o drivers/net/net.o drivers/scsi/scsidrv.o drivers/sound/sounddrivers.o drivers/mtd/mtdlink.o drivers/media/media.o arch/um/fs/built-in.o arch/um/drivers/built-in.o arch/um/os-Linux/drivers/drivers.o \
        net/network.o \
        /usr/src/uml/linux-2.4.26-uml1-r3/lib/lib.a \
        --end-group \
        -o vmlinux
nm vmlinux | grep -v '\(compiled\)\|\(\.o$\)\|\( [aUw] \)\|\(\.\.ng$\)\|\(LASH[RL]DI\)' | sort > System.map
pages=$(( 1 << 2 )) ; \
m4 -DSTART=$((0xc0000000 - ((0 + 1) * 0x20000000))) -DELF_ARCH=i386 \
        -DELF_FORMAT=elf32-i386 -DMODE_TT \
        -DKERNEL_STACK_SIZE=$(( 4096 * $pages )) arch/um/link.ld.in > arch/um/link.ld
mv vmlinux vmlinux.o
gcc -Wl,-T,arch/um/link.ld -static -Wl,--wrap,malloc -Wl,--wrap,free -Wl,--wrap,calloc \
        -o linux arch/um/main.o vmlinux.o -L/usr/lib -lutil
vmlinux.o(.text+0x180910): In function `sscanf':
/usr/src/uml/linux-2.4.26-uml1-r3/lib/vsprintf.c:730: multiple definition of `sscanf'
arch/um/kernel/tt/unmap_fin.o(.text+0x2c9d8): first defined here
vmlinux.o(.text+0x17f8e0): In function `strpbrk':
/usr/src/uml/linux-2.4.26-uml1-r3/lib/string.c:280: multiple definition of `strpbrk'
arch/um/kernel/tt/unmap_fin.o(.text+0x2ebc0): first defined here
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/../../../../i686-pc-linux-gnu/bin/ld: Warning: size of symbol `strpbrk' changed from 179 in arch/um/kernel/tt/unmap_fin.o to 82 in vmlinux.o
collect2: ld returned 1 exit status
make: *** [linux] Error 1
rayServers linux #
Comment 3 Daniel Drake (RETIRED) gentoo-dev 2004-08-26 08:08:42 UTC
It seems there are quite a few compilation issues with this patchset, unfortunately they appear to be upstream issues. Making bug 49277 the place to monitor any progress.

*** This bug has been marked as a duplicate of 49277 ***