FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.

» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Debian > Debian GCC

LinkBack Thread Tools
Old 03-25-2010, 08:38 PM
Török Edwin
Default Bug#575451: gcc-4.5: -flto doesn't remember -fPIC

Package: gcc-4.5
Version: 4.5-20100227-1
Severity: normal
Tags: experimental

gcc-4.5 with -flto doesn't work with -fPIC properly.

Simple testcase:
int entry(int a)
return bar(a)+1;

int bar(int a)
return a+4;

$ gcc-4.5 foo1.c -flto -fPIC -DPIC -c
$ gcc-4.5 foo2.c -flto -fPIC -DPIC -c
$ gcc-4.5 foo1.o foo2.o -flto -shared
/usr/bin/ld: /tmp/ccmA7RCK.lto.o: relocation R_X86_64_PC32 against symbol `bar' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
collect2: ld returned 1 exit status

This works however:
$ gcc-4.5 foo1.o foo2.o -flto -shared -fPIC

Now -fPIC is something libtool automatically adds, and I it doesn't add it at
linktime (perhaps other build systems don't either).
Could gcc's -flto see that all .o files involved in the link are -fPIC... and
make the resulting file -fPIC too?
Or at least it should see the -shared in the linker line, and automatically use
-fPIC when -flto is used.

-- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (990, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.33-00175-g2d1299a0 (SMP w/4 CPU cores; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages gcc-4.5 depends on:
ii binutils 2.20.1-3 The GNU assembler, linker and bina
ii cpp-4.5 4.5-20100227-1 The GNU C preprocessor
ii gcc-4.5-base 4.5-20100227-1 The GNU Compiler Collection (base
ii libc6 2.10.2-6 Embedded GNU C Library: Shared lib
ii libcloog-ppl0 0.15.8-1 the Chunky Loop Generator (runtime
ii libelfg0 0.8.12-0.1 an ELF object file access library
ii libgcc1 1:4.5-20100227-1 GCC support library
ii libgmp3c2 2:4.3.2+dfsg-1 Multiprecision arithmetic library
ii libgmpxx4ldbl 2:4.3.2+dfsg-1 Multiprecision arithmetic library
ii libgomp1 4.5-20100227-1 GCC OpenMP (GOMP) support library
ii libmpc2 0.8.1-1 multiple precision complex floatin
ii libmpfr1ldbl 2.4.2-3 multiple precision floating-point
ii libppl-c2 0.10.2-6 Parma Polyhedra Library (C interfa
ii libppl7 0.10.2-6 Parma Polyhedra Library (runtime l
ii zlib1g 1: compression library - runtime

Versions of packages gcc-4.5 recommends:
ii libc6-dev 2.10.2-6 Embedded GNU C Library: Developmen

Versions of packages gcc-4.5 suggests:
pn gcc-4.5-doc <none> (no description available)
pn gcc-4.5-locales <none> (no description available)
pn gcc-4.5-multilib <none> (no description available)
pn libgcc1-dbg <none> (no description available)
pn libgomp1-dbg <none> (no description available)
pn libmudflap0-4.5-dev <none> (no description available)
pn libmudflap0-dbg <none> (no description available)

-- no debconf information

To UNSUBSCRIBE, email to debian-gcc-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 20100325213843.7735.41797.reportbug@debian">http://lists.debian.org/20100325213843.7735.41797.reportbug@debian

Thread Tools

All times are GMT. The time now is 02:29 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright ©2007 - 2008, www.linux-archive.org