[Shotwell] Build errors
Paul Novak
pnovak at alumni.caltech.edu
Thu Jan 28 22:29:46 PST 2010
On 01/28/2010 12:04 PM, Jim Nelson wrote:
> Hi Paul,
>
> Just today I built Shotwell from trunk on Fedora 12, and I do not see this
> problem. I believe it has something to do with your build environment. I
> confirmed today that the version of gudev that comes with Fedora 12 (145) is
> sufficient for our needs, so I checked in an update Makefile that reflects
> this.
>
> That means you should be able to build Shotwell with only adding packages
> from the GUI Add/Remove Software utility (I'm seeing Vala 0.7.9 and libgee
> 0.5.0 there) and the yum command-line tool, as reflected on our wiki. I'd
> really recommend attempting to build this with a clean system.
>
> -- Jim
>
> On Wed, Jan 27, 2010 at 9:07 PM, Paul Novak <pnovak at alumni.caltech.edu>wrote:
>
>> On 01/27/2010 11:02 AM, Jim Nelson wrote:
>>> Hi Paul,
>>>
>>> Thanks for the pointer about using the stable releases. Using the stable
>>>> release tarballs of vala and libgee allows me to build shotwell. When I
>>>> try to run it, it still fails at runtime with the error "Illegal
>>>> instruction", while the debug build works. I would like to help
>>>> troubleshoot. Do you have any suggestions on where to start?
>>>>
>>>
>>> The following steps would be a big help. Can you run Shotwell from the
>>> command-line like this:
>>>
>>> % SHOTWELL_LOG=1 gdb shotwell
>>>
>>> You'll see Shotwell dump logging information to the console. When the
>>> illegal instruction occurs, gdb will resume control. At the gdb prompt
>>> type:
>>>
>>> (gdb) where
>>>
>>> Can you send us everything that's been logged to the screen? Thanks!
>>>
>>> -- Jim
>>>
>>
>> Hi Jim,
>>
>> I followed your instructions and the output is below. If you need
>> additional information, let me know.
>>
>> Paul
>>
>> $ shotwell
>> Illegal instruction
>> $ SHOTWELL_LOG=1
>> $ echo $SHOTWELL_LOG
>> 1
>> $ gdb shotwell
>> GNU gdb (GDB) Fedora (7.0.1-29.fc12)
>> Copyright (C) 2009 Free Software Foundation, Inc.
>> License GPLv3+: GNU GPL version 3 or later
>> <http://gnu.org/licenses/gpl.html>
>> This is free software: you are free to change and redistribute it.
>> There is NO WARRANTY, to the extent permitted by law. Type "show copying"
>> and "show warranty" for details.
>> This GDB was configured as "i686-redhat-linux-gnu".
>> For bug reporting instructions, please see:
>> <http://www.gnu.org/software/gdb/bugs/>...
>> Reading symbols from /usr/local/bin/shotwell...done.
>> (gdb) run
>> Starting program: /usr/local/bin/shotwell
>> warning: .dynamic section for "/usr/lib/libfreetype.so.6" is not at the
>> expected address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> warning: .dynamic section for "/usr/lib/libltdl.so.7" is not at the
>> expected address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> warning: .dynamic section for "/lib/libz.so.1" is not at the expected
>> address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> warning: .dynamic section for "/usr/lib/libdbus-glib-1.so.2" is not at
>> the expected address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> warning: .dynamic section for "/lib/libgcc_s.so.1" is not at the
>> expected address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> warning: .dynamic section for "/lib/libexpat.so.1" is not at the
>> expected address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> warning: .dynamic section for "/lib/libudev.so.0" is not at the expected
>> address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> warning: .dynamic section for "/usr/lib/libICE.so.6" is not at the
>> expected address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> [Thread debugging using libthread_db enabled]
>> warning: .dynamic section for "/usr/lib/libcanberra-gtk.so.0" is not at
>> the expected address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> warning: .dynamic section for "/usr/lib/libcanberra.so.0" is not at the
>> expected address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> warning: .dynamic section for "/usr/lib/libogg.so.0" is not at the
>> expected address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> warning: .dynamic section for "/usr/lib/libtdb.so.1" is not at the
>> expected address
>> warning: difference appears to be caused by prelink, adjusting expectations
>> Missing separate debuginfo for /usr/lib/libtdb.so.1
>> Try: yum --disablerepo='*' --enablerepo='*-debuginfo' install
>> /usr/lib/debug/.build-id/a9/d89f5a179340f6dc46499bbcdce21d2f85a644.debug
>> [New Thread 0xb7d37b70 (LWP 2062)]
>>
>> Program received signal SIGILL, Illegal instruction.
>> dimensions_get_scaled_by_height (self=0xbffff0f0, scale=24,
>> result=0xbffff0b8)
>> at Dimensions.vala:208
>> 208 Dimensions.vala: No such file or directory.
>> in Dimensions.vala
>> Missing separate debuginfos, use: debuginfo-install
>> GConf2-2.28.0-3.fc12.i686 ORBit2-2.14.17-3.fc12.i686
>> atk-1.28.0-1.fc12.i686 bzip2-libs-1.0.5-6.fc12.i686
>> cairo-1.8.8-3.fc12.i686 dbus-glib-0.82-2.fc12.i686
>> dbus-libs-1.2.16-9.fc12.i686 enchant-1.5.0-3.fc12.i686
>> expat-2.0.1-8.fc12.i686 fontconfig-2.8.0-1.fc12.i686
>> freetype-2.3.11-3.fc12.i686 gamin-0.1.10-5.fc12.i686
>> geoclue-0.11.1.1-0.10.20091026git73b6729.fc12.i686
>> glib2-2.22.3-2.fc12.i686 glibc-2.11.1-1.i686 gnutls-2.8.5-1.fc12.i686
>> gstreamer-0.10.25.1-3.fc12.i686
>> gstreamer-plugins-base-0.10.25.1-2.fc12.i686 gtk2-2.18.6-1.fc12.i686
>> gtk2-engines-2.18.4-4.fc12.i686 gvfs-1.4.3-3.fc12.i686
>> libICE-1.0.6-1.fc12.i686 libSM-1.1.0-7.fc12.i686 libX11-1.3-1.fc12.i686
>> libXau-1.0.5-1.fc12.i686 libXcomposite-0.4.1-2.fc12.i686
>> libXcursor-1.1.10-1.fc12.i686 libXdamage-1.1.2-1.fc12.i686
>> libXext-1.1-2.fc12.i686 libXfixes-4.0.4-1.fc12.i686
>> libXi-1.3-1.fc12.i686 libXinerama-1.1-1.fc12.i686
>> libXrandr-1.3.0-3.fc12.i686 libXrender-0.9.5-1.fc12.i686
>> libXt-1.0.7-1.fc12.i686 libcanberra-0.22-1.fc12.i686
>> libcanberra-gtk2-0.22-1.fc12.i686 libcap-ng-0.6.2-3.fc12.i686
>> libcroco-0.6.2-3.fc12.i686 libexif-0.6.16-4.fc12.i686
>> libgcc-4.4.2-20.fc12.i686 libgcrypt-1.4.4-8.fc12.i686
>> libgpg-error-1.6-4.i686 libgphoto2-2.4.7-2.fc12.i686
>> libgsf-1.14.15-4.fc12.i686 libgudev1-147-2.fc13.i686
>> libicu-4.2.1-7.fc12.i686 libjpeg-6b-46.fc12.i686
>> libogg-1.1.4-2.fc12.i686 libpng-1.2.39-1.fc12.i686
>> librsvg2-2.26.0-3.fc12.i686 libselinux-2.0.87-1.fc12.i686
>> libsoup-2.28.2-1.fc12.i686 libstdc++-4.4.2-20.fc12.i686
>> libtasn1-2.3-1.fc12.i686 libtool-ltdl-2.2.6-17.fc12.i686
>> libudev-147-2.fc13.i686 libuuid-2.16.2-5.fc12.i686
>> libvorbis-1.2.3-3.fc12.i686 libxcb-1.5-1.fc12.i686
>> libxml2-2.7.6-1.fc12.i686 libxslt-1.1.26-1.fc12.i686
>> pango-1.26.2-1.fc12.i686 pixman-0.16.4-2.fc12.i686
>> sqlite-3.6.20-1.fc12.i686 unique-1.1.6-1.fc12.i686
>> webkitgtk-1.1.15.4-1.fc12.i686 zlib-1.2.3-23.fc12.i686
>> (gdb) where
>> #0 dimensions_get_scaled_by_height (self=0xbffff0f0, scale=24, result=
>> 0xbffff0b8) at Dimensions.vala:208
>> #1 0x080a07fe in dimensions_get_scaled (self=<value optimized out>,
>> scale=<value optimized out>, scale_up=<value optimized out>,
>> result=<value optimized out>) at Dimensions.c:443
>> #2 0x080715f6 in scale_pixbuf (pixbuf=<value optimized out>,
>> scale=<value optimized out>, interp=<value optimized out>,
>> scale_up=<value optimized out>) at image_util.vala:92
>> #3 0x080bdf8e in resources_get_icon (name=<value optimized out>,
>> scale=<value optimized out>) at Resources.vala:215
>> #4 0x08058af9 in app_window_construct (object_type=<value optimized out>)
>> at AppWindow.vala:352
>> #5 0x080f427c in library_window_construct (object_type=<value optimized
>> out>,
>> monitor=<value optimized out>, monitor_target=<value optimized out>)
>> at LibraryWindow.vala:254
>> #6 0x080f4f26 in library_window_new (monitor=<value optimized out>,
>> monitor_target=<value optimized out>) at LibraryWindow.vala:254
>> #7 0x080567b2 in library_exec (mounts=<value optimized out>,
>> mounts_length1=<value optimized out>) at main.vala:141
>> #8 0x08056d2a in _main (args=0xbffff3d4, args_length1=1) at main.vala:245
>> #9 0x08056e09 in main (argc=<value optimized out>, argv=<value
>> optimized out>)
>> at main.vala:198
>>
>
Hi Jim,
I built shotwell from SVN trunk this evening. I used libgudev1-devel
from Fedora 12, and re-built vala and libgee from the stable source
releases. When I ran shotwell, it failed at runtime with the "Illegal
instruction" error.
I changed the Makefile to build shotwell with the following compiler flags
CFLAGS = -O2 -g -pipe -mfpmath=sse -march=athlon-xp
because I am building and running on an AMD Athlon XP 2000+ cpu; the
diff is below.
Paul
Index: Makefile
===================================================================
--- Makefile (revision 1141)
+++ Makefile (working copy)
@@ -242,7 +242,7 @@
ifdef BUILD_DEBUG
CFLAGS = -O0 -g -pipe
else
-CFLAGS = -O2 -g -pipe -mfpmath=sse -march=nocona
+CFLAGS = -O2 -g -pipe -mfpmath=sse -march=athlon-xp
endif
endif
More information about the Shotwell
mailing list