Can't get IM to use local static library
Posted: 2014-02-19T14:53:18-07:00
I'm trying to cross compile for an embedded system that uses an ARM processor. I can get the compile to work, and I'm able to run the convert binary on my ARM system to convert GIFs to BMPs just fine. What I'm really after is converting between JPGs and PNGs, but I'm having trouble getting the ./configure step to recognize the libjpeg local to the build directory.
I put the libjpeg.a file at the root of the ImageMagick build directory (ImageMagick-6.8.8-7 in this case).
Here's my configure call and all of its arguments:
The configuration completes successfully, but for some reason the --include-jpeg=yes option comes back with a value of 'no'. Here's the configuration summary.
I believe the configure step is looking in the local directory because if I leave the -L./ off of LDFLAGS, the configure step fails (configure: error: C compiler cannot create executables).
Does anyone know why the jpeg library isn't included?
I put the libjpeg.a file at the root of the ImageMagick build directory (ImageMagick-6.8.8-7 in this case).
Here's my configure call and all of its arguments:
Code: Select all
./configure --host=arm-unknown-nto-qnx6.5.0 --enable-delegate-build --enable-zero-configuration --disable-shared --without-bzlib --without-xml CC=qcc CXX=QCC LDFLAGS='-L./' LIBS='-Bstatic -lsocket -ljpeg'
Code: Select all
ImageMagick is configured as follows. Please verify that this configuration
matches your expectations.
Host system type: arm-unknown-nto-qnx6.5.0
Build system type: i686-pc-linux-gnu
Option Value
-------------------------------------------------------------------------------
Shared libraries --enable-shared=no no
Static libraries --enable-static=yes yes
Module support --with-modules=no no
GNU ld --with-gnu-ld=yes yes
Quantum depth --with-quantum-depth=16 16
High Dynamic Range Imagery
--enable-hdri=no no
Delegate Configuration:
BZLIB --with-bzlib=no no
Autotrace --with-autotrace=no no
Dejavu fonts --with-dejavu-font-dir=default none
DJVU --with-djvu=yes no
DPS --with-dps=yes no
FFTW --with-fftw=yes no
FlashPIX --with-fpx=yes no
FontConfig --with-fontconfig=yes no
FreeType --with-freetype=yes no
GhostPCL None pcl6 (unknown)
GhostXPS None gxps (unknown)
Ghostscript None gs (9.05)
Ghostscript fonts --with-gs-font-dir=default /usr/share/fonts/type1/gsfonts/
Ghostscript lib --with-gslib=no no
Graphviz --with-gvc=no
JBIG --with-jbig=yes no
JPEG v1 --with-jpeg=yes no
JPEG-2000 --with-jp2=
LCMS v1 --with-lcms=yes no
LCMS v2 --with-lcms2=yes no
LQR --with-lqr=yes no
LTDL --with-ltdl=yes no
LZMA --with-lzma=yes no
Magick++ --with-magick-plus-plus=yes yes
MUPDF --with-mupdf=no no
OpenEXR --with-openexr=yes no
OpenJP2 --with-openjp2=yes no
PANGO --with-pango=yes no
PERL --with-perl=no no
PNG --with-png=yes no
RSVG --with-rsvg=no no
TIFF --with-tiff=yes no
WEBP --with-webp=yes no
Windows fonts --with-windows-font-dir= none
WMF --with-wmf=no no
X11 --with-x= no
XML --with-xml=no no
ZLIB --with-zlib=yes yes
X11 Configuration:
X_CFLAGS =
X_PRE_LIBS =
X_LIBS =
X_EXTRA_LIBS =
Options used to compile and link:
PREFIX = /usr/local
EXEC-PREFIX = /usr/local
VERSION = 6.8.8
CC = qcc
CFLAGS = -g -O2 -Wall -fexceptions -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16
CPPFLAGS = -I/usr/local/include/ImageMagick-6
PCFLAGS = -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16
DEFS = -DHAVE_CONFIG_H
LDFLAGS = -L./ -L/home/clai/ImageMagick-6.8.8-7/magick -L/home/clai/ImageMagick-6.8.8-7/wand
MAGICK_LDFLAGS = -L/usr/local/lib -L./ -L/home/clai/ImageMagick-6.8.8-7/magick -L/home/clai/ImageMagick-6.8.8-7/wand
LIBS = -lz -lm
CXX = QCC
CXXFLAGS = -g -O2
FEATURES = DPC Zero-Configuration
DELEGATES = mpeg ps zlib
I believe the configure step is looking in the local directory because if I leave the -L./ off of LDFLAGS, the configure step fails (configure: error: C compiler cannot create executables).
Does anyone know why the jpeg library isn't included?