GNOME Bugzilla – Bug 142252
Plugin unable to open (olympus) jpg image
Last modified: 2009-10-15 18:47:04 UTC
While opening a .jpg image(from an olympus photo camera) GIMP shows an error message like: Opening of file 'image.jpg' failed: The plugin could not open the file. Other programs like xv can open and display the image. Please contact me to get the .jpg file (cause here is no possibility to attach a file) or more information about the used camera type.
You can attach the file to the bug report. Click the "Create a New Attachment" link and follow the instructions provided. Please do so and we will look into the problem.
Created attachment 27552 [details] It's the problematic jpg file from a olympus photo camera (E10)
The file works fine for me on Fedora Core 1. I hate to say this, but the most likely explanation is that you were in a different directory than the one containing the file, or mistyped the file nane, etc -- the error message is what you get when you try to open a file that Gimp cannot find.
Works for me as well.
It seems to be a platform specific problem. In the starting command window is a memory access error: /opt/gnome/lib/gimp/2.0/plug-ins/jpeg: fatal error: Speicherzugriffsfehler I open the file with the "File open" dialog and the image is in me home directory. After opening and saving the file with xv, GIMP is able to open the saved file.
Platform specific? What platform are you running The GIMP on?
AMD Athlon XP, 1GB RAM, SuSE 9.1
Most probably a bug in libjpeg then but it will be difficult to find out unless you can run the plug-in in a debugger. Please have a look at the file debug-plug-ins.txt as found in the GIMP source tree. It tells you how to debug plug-ins.
What OS are you running? Dave.
I run the plugin in gdb and received the following error: Program received signal SIGSEGV, Segmentation fault. 0x405ef208 in _int_free () from /lib/tls/libc.so.6 I saw that the /lib/libc.so.6 is different from /lib/tls/libc.so.6. /lib/: -rwxr-xr-x 1 root root 1334147 2004-04-05 17:16 libc.so.6 /lib/tls/: -rwxr-xr-x 1 root root 1349081 2004-04-05 17:31 libc.so.6 Here is output of the debbug session: $ export GIMP_PLUGIN_DEBUG=jpeg,run $ gdb /opt/gnome/lib/gimp/2.0/plug-ins/jpeg GNU gdb 6.1 Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i586-suse-linux"...(no debugging symbols found)...Using host libthread_db library "/lib/tls/libthread_db.so.1". gdb) (jpeg:7241): LibGimp-DEBUG: Waiting for debugger... attach 7241 Attaching to program: /opt/gnome/lib/gimp/2.0/plug-ins/jpeg, process 7241 Reading symbols from /opt/gnome/lib/libgimpui-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libgimpui-2.0.so.0 Reading symbols from /opt/gnome/lib/libgimp-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libgimp-2.0.so.0 Reading symbols from /opt/gnome/lib/libgimpwidgets-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libgimpwidgets-2.0.so.0 Reading symbols from /opt/gnome/lib/libgimpmodule-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libgimpmodule-2.0.so.0 Reading symbols from /opt/gnome/lib/libgimpcolor-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libgimpcolor-2.0.so.0 Reading symbols from /opt/gnome/lib/libgimpbase-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libgimpbase-2.0.so.0 Reading symbols from /usr/lib/libjpeg.so.62...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libjpeg.so.62 Reading symbols from /opt/gnome/lib/libgtk-x11-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libgtk-x11-2.0.so.0 Reading symbols from /opt/gnome/lib/libgdk-x11-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libgdk-x11-2.0.so.0 Reading symbols from /opt/gnome/lib/libatk-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libatk-1.0.so.0 Reading symbols from /opt/gnome/lib/libgdk_pixbuf-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libgdk_pixbuf-2.0.so.0 Reading symbols from /opt/gnome/lib/libpangoxft-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libpangoxft-1.0.so.0 Reading symbols from /opt/gnome/lib/libpangox-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libpangox-1.0.so.0 Reading symbols from /opt/gnome/lib/libpango-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libpango-1.0.so.0 Reading symbols from /opt/gnome/lib/libgobject-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libgobject-2.0.so.0 Reading symbols from /opt/gnome/lib/libgmodule-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libgmodule-2.0.so.0 Reading symbols from /lib/libdl.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/libdl.so.2 Reading symbols from /opt/gnome/lib/libglib-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /opt/gnome/lib/libglib-2.0.so.0 Reading symbols from /usr/lib/libexif.so.9...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libexif.so.9 Reading symbols from /lib/tls/libm.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/tls/libm.so.6 Reading symbols from /lib/tls/libc.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/tls/libc.so.6 Reading symbols from /usr/X11R6/lib/libX11.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/X11R6/lib/libX11.so.6 Reading symbols from /usr/X11R6/lib/libXrandr.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/X11R6/lib/libXrandr.so.2 Reading symbols from /usr/X11R6/lib/libXi.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/X11R6/lib/libXi.so.6 Reading symbols from /usr/X11R6/lib/libXext.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/X11R6/lib/libXext.so.6 Reading symbols from /usr/X11R6/lib/libXft.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/X11R6/lib/libXft.so.2 Reading symbols from /usr/X11R6/lib/libXrender.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/X11R6/lib/libXrender.so.1 Reading symbols from /usr/lib/libfontconfig.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libfontconfig.so.1 Reading symbols from /usr/lib/libfreetype.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libfreetype.so.6 Reading symbols from /lib/ld-linux.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/ld-linux.so.2 Reading symbols from /usr/lib/libexpat.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libexpat.so.0 0xffffe410 in ?? () (gdb) continue Continuing. Program received signal SIGSTOP, Stopped (signal). 0xffffe410 in ?? () (gdb) continue Continuing. Program received signal SIGSTOP, Stopped (signal). 0xffffe410 in ?? () (gdb) continue Continuing. *my remark: GIMP shows a progress dialog (Opening 'problem.jpg' ...)* Program received signal SIGSEGV, Segmentation fault. 0x405ef208 in _int_free () from /lib/tls/libc.so.6 (gdb) continue Continuing. /opt/gnome/lib/gimp/2.0/plug-ins/jpeg: fatal error: Speicherzugriffsfehler Program exited normally.
That's not a stack trace and anyway, running a debugging session on libraries that have the debug info stripped is not going to help.
The "no debugging symbols found" stuff indicates major weirdness in your setup. Where did your version of Gimp come from? Did you build it yourself, or did you install the package that came with Suse 9.1? Or - gasp - both? If the story is more complicated, please summarize your history of Gimp installations on this system. Incidentally, when somebody asks for a stack trace, here is what they want you to do: Run the program in gdb, and make it crash. Then type "where", and show the results. (But don't do that now: without debugging symbols the results would be useless.)
Correction to previous comment: the "no debugging symbols found" problem seems to be an issue with recent versions of gdb, and does not prevent it from working. So please go ahead and produce a stack trace as described.
"no debugging symbols found" usually means that the libraries are stripped and there are no debugging symbols available. Why should that be an issue with gdb?
*** Bug 142966 has been marked as a duplicate of this bug. ***
It might be an issue with gdb because in my brand new Fedora Core 2 installation it happens every time I run gdb, regardless of how the executable was created.
It's all from SuSE (no self compiled package yet) and it seems as the binaries are stripped. I guess I have to compile the source from SuSE to get the symbol tables for gdb, right ? A bt (stack trace) in gdb returns:
+ Trace 46900
Looks like the problem is in libexif (or the way that we use libexif).
Because of all the TLS/kernel2.6 stuff, one should not rule out the possibility that the problem is in glibc or even the kernel. The libexif code has worked in the past, and is quite stable. Testing shows that the EXIF data in the problematic file is well-formed. The libexif version in Suse 9.1 is libexif.so.9.1.2, which is the same one I am using successfully in reading the problematic file. Nevertheless it is pretty clear that the problem is not in Gimp.
Created attachment 28054 [details] gdb listing (inc. source) for jpeg plugin
I've compiled GIMP from the sources distributed by SuSE and replaced the stripped jpeg library. gdb show the following: Program received signal SIGSEGV, Segmentation fault. 0x405f0208 in _int_free () from /lib/tls/libc.so.6 (gdb) where
+ Trace 46921
For more information see the attachment above (gdb listing). Hope it helps.
libexif.so.9.1.2 seems to be the problematic library. After installing Fedora 2, I copied the libexif file to the SuSE installation (/usr/lib/). I know it's a hack and of course I've made a backup of the original file. But now I'm able to open the image with GIMP.
Please do not close bug reports but leave this to the people who maintain the bugs. Reopening and closing with a proper resolution...
*** Bug 144450 has been marked as a duplicate of this bug. ***
A kind fellow on the gimp-user list informed us that: There is a fixed version of the libexif file for SuSE now. I was able to build a new one, but it required a bit more tweaking than I liked, so the nice SuSE guy that maintains these files alerted me he had posted a fixed version. Here is your site for the new file: ftp://ftp.suse.com/pub/people/meissner Download the file from his libexif directory and install. All should be well with your camera files then.
*** Bug 131364 has been marked as a duplicate of this bug. ***
*** Bug 156556 has been marked as a duplicate of this bug. ***
*** Bug 154576 has been marked as a duplicate of this bug. ***
*** Bug 165244 has been marked as a duplicate of this bug. ***
*** Bug 598531 has been marked as a duplicate of this bug. ***