Build error kdebase on amd64 platform: relocation R_X86_64_32S against `a local symbol'

Christian Esken esken at kde.org
Sat May 24 13:59:56 BST 2008


Am Montag, 19. Mai 2008 schrieb Thiago Macieira:
> Christian Esken wrote:
> >> > Linking CXX shared module ../../../lib/kcm_pci.so
> >> > /usr/lib64/gcc/x86_64-suse-linux/4.2.1/../../../../lib64/libpci.a(ac
> >> >cess.o): relocation R_X86_64_32S against `a local symbol' can not be
> >> > used when making a shared object; recompile with -fPIC
> 
> >OK, I found Thiagos post on kde-devel from 2008-04-25 21:50:49 (complier
> > bug). Looks I need to find myself a newer compiler than "g++-4.2 (GCC)
> > 4.2.1 (SUSE Linux)". It's probably easier to wait for SuSE11.0 (one
> > month to go).
> 
> Or you need to get a shared library version of libpci. You cannot link a 
> static library into a shared object.
> 

This works. It actually has to be a shared object, "-fPIC" alone in libpci didn't help. I had to hack the pciutils Makefile, as it seems support for shared object was removed in later versions of pciutils-2 (but added again in pciutils-3).

 Christian

-- 
Things should be made as simple as possible, but no simpler. 
  - Albert Einstein




More information about the kde-core-devel mailing list