convert: Negative or zero image size

Questions and postings pertaining to the usage of ImageMagick regardless of the interface. This includes the command-line utilities, as well as the C and C++ APIs. Usage questions are like "How do I use ImageMagick to create drop shadows?".
Post Reply
rukka74

convert: Negative or zero image size

Post by rukka74 »

Hi,

I have built ImageMagick 6.2.6 on a cross-compile environment (scratchbox) for an armv5b target. If I run convert like shown below from within scratchbox, which is using the remote shell to actually execute the binary on the target device everything works fine.
/volume1/opt/bin/convert -quality 75 -size 200x200 -geometry 200x200 /volume1/public/test/cmyk.jpg /volume1/public/test/convert/cmyk.jpg
(PS: I know that this command line is deprecated, but Gallery2 is still using it like that - and it works, so that shouldn't cause the problem).

If I then copy everything to the target device and run the same command, I get the following error:
convert: Negative or zero image size `/volume1/public/test/cmyk.jpg'.

Configure command was as follows:
--prefix=/opt --disable-installed --without-perl --with-magick-plus-plus=no


As you can see from below, all the required libs are found on the target.
./ld-linux.so.2 --list /volume1/opt/bin/convert
libMagick.so.10 => /volume1/opt/lib/libMagick.so.10 (0x40001000)
libWand.so.10 => /volume1/opt/lib/libWand.so.10 (0x4026a000)
libjpeg.so.62 => /volume1/opt/lib/libjpeg.so.62 (0x40304000)
libpng12.so.0 => /volume1/opt/lib/libpng12.so.0 (0x40329000)
libpthread.so.0 => /lib/libpthread.so.0 (0x4035d000)
libdl.so.2 => /lib/libdl.so.2 (0x403b5000)
libm.so.6 => /lib/libm.so.6 (0x403c0000)
libc.so.6 => /lib/libc.so.6 (0x4046c000)
/lib/ld-linux.so.2 => ./ld-linux.so.2 (0x2aaaa000)

Here you'll find the strace output from the successful execution in scratchbox and from the failed execution on the target
http://coram.mine.nu/strace/strace_target.txt
http://coram.mine.nu/strace/strace_scratchbox.txt

Maybe someone can give a hint?

Chris
User avatar
magick
Site Admin
Posts: 11064
Joined: 2003-05-31T11:32:55-07:00

Re: convert: Negative or zero image size

Post by magick »

Try the command without the -geometry option. The error you are getting is from the image resize method. Does that work? If so, try -resize 200x200 instead of -geometry. Does that work? If not, the command line parser is failing to interpret the 200x200 properly which most likely would indicate a compiler bug or C library bug.
rukka74

Re: convert: Negative or zero image size

Post by rukka74 »

Well, well.... it was a glibc issue.

The target device has libc.so.6 version 2.3.3 built with gcc 3.3.4 - the version on scratchbox is also 2.3.3 built with gcc 3.3.4 but still not the same.

after copying it to the target ImageMagick worked!

Thanks for your help!
yavacom

Re: convert: Negative or zero image size

Post by yavacom »

can you tell me how you configure for you cross-compiling? thanks.
Post Reply