Ken Moffat zarniwhoop73 at
Thu Jun 3 11:49:36 PDT 2010

On 3 June 2010 18:41, Trent Shea <trentshea at> wrote:
> I'm working on my first x86_64 system build using the 6.6 book, and I've run
> into a bit of trouble with libmng.
> /usr/bin/ld: libmng_chunk_io.o: relocation R_X86_64_32 against `.rodata' can
> not be used when making a shared object; recompile with -fPIC
> libmng_chunk_io.o: could not read symbols: Bad value
> collect2: ld returned 1 exit status
> make: *** [] Error 1
> As suggested I added -fPIC to the build:
> diff makefiles/makefile.linux
> /media/data.castra/build/libmng-1.0.10/makefiles/makefile.linux
> 47c47
> < CFLAGS=-I$(ZLIBINC) -I$(JPEGINC) -I$(LCMSINC) -Wall -O3 -funroll-loops \
> ---
>> CFLAGS=-I$(ZLIBINC) -I$(JPEGINC) -I$(LCMSINC) -fPIC -Wall -O3 -funroll-loops
> \
> I'm curious if anyone else has seen this, and if so am I on the right track? I
> do see that Debian has added -fPIC to their CFLAGS. I'm afraid there's not a
> test suite with this package and I probably won't find out if everything works
> until after qt or maybe kde. Anyhow I guess I'm just looking for a bit of hand
> holding and posting to see if a ticket regarding this is warranted.

 I used to see it (I stopped building libmng over a year ago because I couldn't
find any need for it).  In my case I used to

sed -e 's%-O3%-O3 -fPIC%' \
                 makefiles/makefile.linux >Makefile

 which is nearly the same as you are doing..

I also have to force it in a52dec-0.7.4 (add to CFLAGS when running
configure) and ghostscript-8.70 where I took the fix from cblfs and
adapted it when the file moved -
sed -i "s/CFLAGS='/&-fPIC /g" base/unix-dll.mak

 When I first played with pure64 there were several other packages
that needed fPIC added.  Slowly, the old ones are either being relaced
or dropping out of use.

After tragedy, and farce, "OMG poneys!"

More information about the blfs-support mailing list