Mantis - imagemagick
Viewing Issue Advanced Details
5170 packaging major always 2014-05-15 12:22 2014-06-11 10:05
tt4l  
laurent  
normal  
closed  
fixed  
none    
none  
0005170: convert changes source time stamps
This does not happen with convert on Linux or with a compiled new version Imagemagick 6.8.9-1 on Solaris. To reproduce create a simple Word document:

$ stat test.doc|egrep "Modify|Change"
Modify: 2014-05-15 11:40:04.000000000 +0200
Change: 2014-05-15 11:41:39.929074900 +0200

$ /opt/csw/bin/convert test.doc test.jpg
convert: unable to open file `test.doc': No such file or directory @ error/fpx.c/ReadFPXImage/267.
convert: no images defined `test.jpg' @ error/convert.c/ConvertImageCommand/3147.

$ stat test.doc|egrep "Modify|Change"
Modify: 2014-05-15 11:58:40.748870081 +0200
Change: 2014-05-15 11:58:40.748870081 +0200
root@ufs01:/tmp# pkgutil -c|grep -i imagemag
CSWimagemagick 6.8.8,REV=2014.03.03_rev=7 SAME

Some tools and databases rely on the source file timestamp.
doc file icon test.doc [^] (22,016 bytes) 2014-05-15 12:22
log file icon config.log [^] (642,859 bytes) 2014-05-16 10:37
log file icon configure.log [^] (33,767 bytes) 2014-05-16 11:41
Issue History
2014-05-15 12:22 tt4l New Issue
2014-05-15 12:22 tt4l File Added: test.doc
2014-05-15 21:05 laurent Note Added: 0010822
2014-05-15 21:05 laurent Assigned To => laurent
2014-05-15 21:05 laurent Status new => confirmed
2014-05-16 10:21 laurent Note Added: 0010823
2014-05-16 10:36 tt4l Note Added: 0010824
2014-05-16 10:37 tt4l File Added: config.log
2014-05-16 11:10 laurent Note Added: 0010825
2014-05-16 11:41 tt4l File Added: configure.log
2014-05-16 11:46 tt4l Note Added: 0010826
2014-05-16 13:14 tt4l Note Added: 0010828
2014-05-16 13:17 laurent Note Added: 0010829
2014-05-16 13:57 laurent Note Added: 0010830
2014-05-16 14:14 laurent Note Added: 0010831
2014-05-16 15:01 tt4l Note Added: 0010832
2014-05-16 15:07 laurent Note Added: 0010833
2014-05-18 21:09 laurent Note Added: 0010834
2014-05-18 22:43 tt4l Note Added: 0010835
2014-05-19 08:49 laurent Note Added: 0010836
2014-06-11 10:05 laurent Note Added: 0010857
2014-06-11 10:05 laurent Status confirmed => closed
2014-06-11 10:05 laurent Resolution open => fixed

Notes
(0010822)
laurent   
2014-05-15 21:05   
Reproduced. Weird.
(0010823)
laurent   
2014-05-16 10:21   
I don't understand yet what's going on. A truss shows the .doc file is first opened read only, then read-write, and apparently the same data that was just read is written back. It makes little sense.
The "Unable to open file" seemes to be the main symptom here.

I've updated the ImageMagick version to 6.8.9-1, and the behaviour is the same.

Can you provide the exact compilation steps you used?
(0010824)
tt4l   
2014-05-16 10:36   
I forgot to write that we are using Solaris 11.1. I did not use any special options, but just untar and ./configure --prefix=...
I can attach the config.log, if this helps. Could it be the gcc version or some library? I am using gcc 4.5.2:

root@pictstore:/usr/local/stow/tmp/ImageMagick-6.8.9-1# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/gcc/4.5/lib/gcc/i386-pc-solaris2.11/4.5.2/lto-wrapper
Target: i386-pc-solaris2.11
Configured with: /builds/hudson/workspace/nightly-update/build/i386/components/gcc45/gcc-4.5.2/configure CC=/ws/on11update-tools/SUNWspro/sunstudio12.1/bin/cc CXX=/ws/on11update-tools/SUNWspro/sunstudio12.1/bin/CC --prefix=/usr/gcc/4.5 --mandir=/usr/gcc/4.5/share/man --bindir=/usr/gcc/4.5/bin --libdir=/usr/gcc/4.5/lib --sbindir=/usr/gcc/4.5/sbin --infodir=/usr/gcc/4.5/share/info --libexecdir=/usr/gcc/4.5/lib --enable-languages=c,c++,fortran,objc --enable-shared --with-gmp-include=/usr/include/gmp --with-mpfr-include=/usr/include/mpfr --without-gnu-ld --with-ld=/usr/bin/ld --with-gnu-as --with-as=/usr/gnu/bin/as CFLAGS='-g -O2 '
Thread model: posix
gcc version 4.5.2 (GCC)


root@pictstore:/usr/local/stow/tmp/ImageMagick-6.8.9-1# ldd /usr/local/stow/ImageMagick-6.8.9-1/bin/convert
        libMagickCore-6.Q16.so.2 => /usr/local/stow/ImageMagick-6.8.9-1/lib/libMagickCore-6.Q16.so.2
        libMagickWand-6.Q16.so.2 => /usr/local/stow/ImageMagick-6.8.9-1/lib/libMagickWand-6.Q16.so.2
        liblcms.so.1 => /usr/lib/liblcms.so.1
        libtiff.so.3 => /usr/lib/libtiff.so.3
        libjpeg.so.62 => /usr/lib/libjpeg.so.62
        libpng14.so.14 => /usr/lib/libpng14.so.14
        libfftw3.so.3 => /usr/lib/libfftw3.so.3
        libXext.so.0 => /usr/lib/libXext.so.0
        libXt.so.4 => /usr/lib/libXt.so.4
        libbz2.so.1 => /usr/lib/libbz2.so.1
        libxml2.so.2 => /lib/libxml2.so.2
        libz.so.1 => /lib/libz.so.1
        libSM.so.6 => /usr/lib/libSM.so.6
        libICE.so.6 => /usr/lib/libICE.so.6
        libX11.so.4 => /usr/lib/libX11.so.4
        libgomp.so.1 => /usr/lib/libgomp.so.1
        libm.so.2 => /lib/libm.so.2
        libpthread.so.1 => /lib/libpthread.so.1
        libc.so.1 => /lib/libc.so.1
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1
        libsocket.so.1 => /lib/libsocket.so.1
        libnsl.so.1 => /lib/libnsl.so.1
        libxcb.so.1 => /usr/lib/libxcb.so.1
        libmp.so.2 => /lib/libmp.so.2
        libmd.so.1 => /lib/libmd.so.1
        libXau.so.6 => /usr/lib/libXau.so.6
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6
        libsoftcrypto.so.1 => /lib/libsoftcrypto.so.1
        libelf.so.1 => /lib/libelf.so.1
        libcryptoutil.so.1 => /lib/libcryptoutil.so.1
        libXevie.so.1 => /usr/lib/libXevie.so.1
        libXss.so.1 => /usr/lib/libXss.so.1
(0010825)
laurent   
2014-05-16 11:10   
Yes, please attach config.log and the whole output of configure itself, so I can check what it picked.
(0010826)
tt4l   
2014-05-16 11:46   
I have attached "./configure --prefix=/usr/local/stow/ImageMagick-6.8.9-1" output and old config.log. New config.log just has different date and path names.
(0010828)
tt4l   
2014-05-16 13:14   
I think I have less libraries/options compiled in, probably just because some devel libs are not installed:

root@pictstore:/usr/local/stow/tmp/test# convert --version
Version: ImageMagick 6.8.8-7 Q16 i386 2014-03-03 http://www.imagemagick.org [^]
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC
Features: DPC HDRI Modules OpenMP
Delegates: bzlib cairo djvu fftw fontconfig freetype fpx gslib gvc jbig jng jpeg lcms lqr ltdl lzma openexr pangocairo png ps rsvg tiff webp wmf x xml zlib

root@pictstore:/usr/local/stow/tmp/test# /usr/local/stow/ImageMagick-6.8.9-1/bin/convert -version
Version: ImageMagick 6.8.9-1 Q16 i386 2014-05-16 http://www.imagemagick.org [^]
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC
Features: DPC OpenMP
Delegates: bzlib fftw jng jpeg lcms png tiff x xml zlib
(0010829)
laurent   
2014-05-16 13:17   
Yes, it's clearly the fpx one that is a problem here. I'm doing a test rebuild without it.
(0010830)
laurent   
2014-05-16 13:57   
Without FPX, the original file is not overwritten, but no output, with a different error message. I've asked upstream.

$ convert file.doc file.jpg
convert: no decode delegate for this image format `FPX' @ error/constitute.c/ReadImage/501.
convert: no images defined `Intercultural_Sensitivity_Questionnaire.jpg' @ error/convert.c/ConvertImageCommand/3187.
(0010831)
laurent   
2014-05-16 14:14   
Upstream confirms this is a bug and they will fix it shortly.

http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=25584 [^]
(0010832)
tt4l   
2014-05-16 15:01   
very nice. thanks for work and reporting it upstream. when will the corrected package will appear in testing branch? will we need to wait 2 weekr or can you provide a "prerelase" without fpx?
(0010833)
laurent   
2014-05-16 15:07   
If they deliver it tomorrow and there's no other issue, I can probably push an experimental build this weekend.
(0010834)
laurent   
2014-05-18 21:09   
Packages done with the 20140517 beta of 6.8.9-2 are now on experimental:

http://buildfarm.opencsw.org/experimental.html#laurent [^]

They appear to run soffice, which I don't have, so I can't confirm if it works.
Please give them a try.
(0010835)
tt4l   
2014-05-18 22:43   
This fixes the issue, thank you!

I had to switch from "testing" to "unstable" because CSWlibopenjp2-7 was missing for the command "pkgutil -t http://buildfarm.opencsw.org/opencsw/experimental/laurent [^] -i imagemagick"

Do I have to go to unstable on the production machine also? Probably this is not an issue, because packages from unstable come to testing after 2 weeks, if I read your wiki correctly. Then I could switch back to testing? Thanks again!
(0010836)
laurent   
2014-05-19 08:49   
That should be fine, yes.
A more recent version of OpenJPEG was needed to build the latest IM. Do note that since this package is the build from a beta, I won't push it, I'll wait until they deliver the final -2 version. It should work for you until then in any case.
(0010857)
laurent   
2014-06-11 10:05   
Final version of 6.8.9-2 has been built and uploaded, and appears to deal properly with PDF.