Trent Shea trentshea at
Thu Jun 3 10:41:29 PDT 2010

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.

gcc -shared -Wl,-soname, -o \
        libmng_callback_xs.o libmng_chunk_io.o libmng_chunk_descr.o 
libmng_chunk_prc.o libmng_chunk_xs.o libmng_cms.o libmng_display.o 
libmng_dither.o libmng_error.o libmng_filter.o libmng_hlapi.o libmng_jpeg.o 
libmng_object_prc.o libmng_pixels.o libmng_prop_xs.o libmng_read.o 
libmng_trace.o libmng_write.o libmng_zlib.o -L/usr/local/lib -L/usr/local/lib 
-ljpeg -L/usr/local/lib -llcms \
    -lz -lm -lc
/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 
< 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.

Oh, to test later:


More information about the blfs-support mailing list