Hello argyllcms, I'm having trouble compiling Argyll 1.4.0 from source under OpenSUSE 12.1. I have compiled other versions, 1.3.4 to 1.3.7 on other machines, and can compile 1.3.6 on this machine (so the patched jam is set up correctly, for example). I get an undefined symbol in a jpeg library. The system JPEG library v.6.2 is installed; it looks as if Argyll is compiling against the supplied v.8 library and then linking against 6.2? I did attempt to upgrade from 6.2 to 8 for the system JPEG library, but was informed that 400-off dependencies (basically all of the Gnome and KDE applications) would be removed as 6.2 dependencies. So i decided not to do that. Looking in the jamtop file I see a test for system JPEG library which seems to be failing. I was able to get everything to compile and link by commenting out the "If nothing else, use Argyll supplied JPEG library" section and then adding another bit, a copy of what have happened had the test succeeded. Well, a copy that changes what seems to be a copypaste error LINKFLAGS += $(LINKFLAG)tiff ; to LINKFLAGS += $(LINKFLAG)jpeg ; While that got me up and running, it is an unsatisfactory hack. # If nothing else, use Argyll supplied JPEG library #if ! $(HAVE_JPEG) || $(BUILTIN_JPEG) { # echo "Using built in JPEG library" ; # JPEGLIB = ../jpg/libjpg.lib ; # JPEGINC = ../jpg ; #} #Force system JPEG echo "Forcing system JPEG library" ; JPEGLIB = ; JPEGINC = ; LINKFLAGS += $(LINKFLAG)jpeg ; HAVE_JPEG = true ; -- Chris Lilley Technical Director, Interaction Domain W3C Graphics Activity Lead, Fonts Activity Lead Co-Chair, W3C Hypertext CG Member, CSS, WebFonts, SVG Working Groups
Chmod1 xicc/xicclu Cc_ xicc/revfix.o Link_ xicc/tiffgamut Link_ xicc/revfix /usr/lib64/gcc/x86_64-suse-linux/4.6/../../../../x86_64-suse-linux/bin/ld: xicc/libxicc.a(iccjpeg.o): undefined reference to symbol 'jpeg_write_m_byte@@LIBJPEG_6.2' /usr/lib64/gcc/x86_64-suse-linux/4.6/../../../../x86_64-suse-linux/bin/ld: note: 'jpeg_write_m_byte@@LIBJPEG_6.2' is defined in DSO /usr/lib64/libjpeg.so.62 so try adding it to the linker command line /usr/lib64/libjpeg.so.62: could not read symbols: Invalid operation collect2: ld returned 1 exit status cc -o xicc/tiffgamut xicc/tiffgamut.o -L/usr/lib64 -ldl -lrt -lX11 -lXext -lXxf86vm -lXinerama -lXrandr -lXau -lXdmcp -lXss -ltiff jpg/libjpg.a xicc/libxicc.a spectro/libinsttypes.a gamut/libgamut.a rspl/librspl.a cgats/libcgats.a icc/libicc.a plot/libplot.a plot/libvrml.a numlib/libnum.a -lm -lpthread ...failed Link_ xicc/tiffgamut ... Chmod1 xicc/revfix Archive imdi/libimdi.a ...failed updating 1 target(s)... ...updated 304 target(s)... make: *** [all] Error 1 chris@linux-l7dh:~/colorcode/Argyll_V1.4.0>