graphics/rawtherapee: r342622 crashes on HEAD

Rainer Hurling rhurlin at gwdg.de
Wed Feb 5 21:01:21 UTC 2014


Hi Matthias,

thanks for answering.

Am 05.02.2014 21:03, schrieb Matthias Andree:
> Am 05.02.2014 20:46, schrieb Rainer Hurling:
>> Many thanks for the update of graphics/rawtherapee, r342622. This
>> program is really important for photographers.
>>
>> It builds and installs just fine on recent HEAD amd64, but unfortunately
>> it crashes immediately, when started.
> 
> Rainer,
> 
> I don't see the crash on FreeBSD 10.0-RELEASE amd64 and 9.2-RELEASE
> amd64 - those are versions I tried and where I could successfully open a
> Sony ARW file and click a few UI items.  Note sure what 11 changed that
> it would break.
> 
>> I tried to build rawtherapee and some of its dependencies with
>> WITH_DEBUG=yes and then to have a look with gdb, but with only little
>> luck. Obviously there is a problem with DWARF(?) and many libs without
>> debug symbols?
> 
> It's rather that the base /usr/bin/gdb cannot deal with the newer debug
> symbol formats...
> 
>> # gdb rawtherapee
>> [..SNIP..]
>> This GDB was configured as "amd64-marcel-freebsd"...Dwarf Error: wrong
>> version in compilation unit header (is 4, should be 2) [in module
>> /usr/local/bin/rawtherapee]
>> [..SNIP..]
> 
> ...do you have more luck with gdb built from the ports collection
> (devel/gdb), which is version 7.6.2, as opposed to the base system gdb
> 6.1.1?

Okay, here it comes. RawTherapee from before, with newer gdb:

#gdb762 rawtherapee
GNU gdb (GDB) 7.6.2 [GDB v7.6.2 for FreeBSD]
Copyright (C) 2013 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 "x86_64-portbld-freebsd11.0".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/local/bin/rawtherapee...done.
(gdb) r
Starting program: /usr/local/bin/rawtherapee
[New LWP 100312]
[New Thread 4ec06400 (LWP 100312)]
Terminating due to uncaught exception 0x4fe78700 of type Glib::ConvertError

Program received signal SIGABRT, Aborted.
[Switching to Thread 4ec06400 (LWP 100312)]
0x0000000048b847ba in thr_kill () from /lib/libc.so.7
(gdb) bt full
#0  0x0000000048b847ba in thr_kill () from /lib/libc.so.7
No symbol table info available.
#1  0x0000000048c3b029 in abort () from /lib/libc.so.7
No symbol table info available.
#2  0x00000000484d37da in ?? () from /lib/libcxxrt.so.1
No symbol table info available.
#3  0x00000000423aa8f8 in Glib::ConvertError::throw_func(_GError*) ()
from /usr/local/lib/libglibmm-2.4.so.1
No symbol table info available.
#4  0x00000000423baa0f in Glib::Error::throw_exception(_GError*) () from
/usr/local/lib/libglibmm-2.4.so.1
No symbol table info available.
#5  0x00000000423c60b4 in
Glib::operator<<(std::__1::basic_ostream<wchar_t,
std::__1::char_traits<wchar_t> >&, Glib::ustring const&) () from
/usr/local/lib/libglibmm-2.4.so.1
No symbol table info available.
#6  0x000000000064fce7 in
Glib::ustring::FormatStream::stream<Glib::ustring> (this=0x7fffffffbae0,
value=...) at /usr/local/include/glibmm-2.4/glibmm/ustring.h:1057
No locals.
#7  0x000000000064f765 in Glib::ustring::format<Glib::ustring, char [9]>
(a1=..., a2=...) at /usr/local/include/glibmm-2.4/glibmm/ustring.h:1145
        buf = {stream_ =
    {<std::__1::basic_ostream<wchar_t, std::__1::char_traits<wchar_t> >>
= {<std::__1::basic_ios<wchar_t, std::__1::char_traits<wchar_t> >> =
{<std::__1::ios_base> = {<No data fields>}, __tie_ = 0x0,
                __fill_ = -1}, _vptr.basic_ostream = 0xf853b8 <vtable
for std::__1::basic_ostringstream<wchar_t,
std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >+24>},
            __sb_ = {<std::__1::basic_streambuf<wchar_t,
std::__1::char_traits<wchar_t> >> = {
                _vptr.basic_streambuf = 0xf85490 <vtable for
std::__1::basic_stringbuf<wchar_t, std::__1::char_traits<wchar_t>,
std::__1::allocator<wchar_t> >+16>, __loc_ = {static none = 0,
                  static collate = 1, static ctype = 2, static monetary
= 8, static numeric = 16, static time = 32, static messages = 4, static
all = 63, __locale_ = 0x484c0ee0}, __binp_ = 0x0,
                __ninp_ = 0x0, __einp_ = 0x0, __bout_ = 0x7fffffffbb2c
L"", __nout_ = 0x7fffffffbb2c L"", __eout_ = 0x7fffffffbb3c L""},
              __str_ = {<std::__1::__basic_string_common<true>> = {<No
data fields>},
                __r_ =
{<std::__1::__libcpp_compressed_pair_imp<std::__1::basic_string<wchar_t,
std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >::__rep,
std::__1::allocator<wchar_t>, 2u>> = {<std::__1::allocator<wchar_t>> =
{<No data fields>}, __first_ = {{__l = {__cap_ = 8, __size_ = 0, __data_
= 0x0}, __s = {{__size_ = 8 '\b', __lx = 8 L'\b\000\000\000'},
                          __data_ = L'\000' <repeats 16 times>}, __r =
{__words = {8, 0, 0}}}}}, <No data fields>}, static npos =
18446744073709551615}, __hm_ = 0x7fffffffbb2c L"", __mode_ = 16}}}
#8  0x000000000064c798 in RTImage::setPaths (opt=...) at
/usr/ports/graphics/rawtherapee/work/rawtherapee-4.0.12/rtgui/rtimage.cc:101
        configFilename = {static npos = 18446744073709551615, string_ =
{<std::__1::__basic_string_common<true>> = {<No data fields>},
            __r_ =
{<std::__1::__libcpp_compressed_pair_imp<std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> >::__rep,
std::__1::allocator<char>, 2u>> = {<std::__1::allocator<char>> = {<No
data fields>}, __first_ = {{__l = {__cap_ = 0, __size_ = 0, __data_ =
0x0}, __s = {{__size_ = 0 '\000', __lx = 0 '\000'}, __data_ = '\000'
<repeats 22 times>}, __r = {__words = {0,
                        0, 0}}}}}, <No data fields>}, static npos =
18446744073709551615}}
        keyFile = {<Glib::KeyFile> = {gobject_ = 0x4ec15d80,
owns_gobject_ = true}, <No data fields>}
        hasKeyFile = true
#9  0x0000000000696aaf in main (argc=1, argv=0x7fffffffd6d0) at
/usr/ports/graphics/rawtherapee/work/rawtherapee-4.0.12/rtgui/main.cc:239
        m = <incomplete type>
        icon_path = {static npos = 18446744073709551615, string_ =
{<std::__1::__basic_string_common<true>> = {<No data fields>},
            __r_ =
{<std::__1::__libcpp_compressed_pair_imp<std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> >::__rep,
std::__1::allocator<char>, 2u>> = {<std::__1::allocator<char>> = {<No
data fields>}, __first_ = {{__l = {__cap_ = 49, __size_ = 35, __data_ =
0x4fe3d220 "/usr/local/share/rawtherapee/images"}, __s = {{__size_ = 49
'1', __lx = 49 '1'},
                      __data_ =
"\000\000\000\000\000\000\000#\000\000\000\000\000\000\000
\322\343O\000\000\000"}, __r = {__words = {49, 35, 1340330528}}}}}, <No
data fields>},
            static npos = 18446744073709551615}}
        rtWindow = 0x1
        defaultIconTheme = {pCppObject_ = 0x4fde90a0}
        settings = {pCppObject_ = 0x0}


> 
> Also, if you recompile rawtherapee without the highly aggressive
> compiler flags, does that help?

This version was compiled without the option OPTIMIZED_CFLAGS. Is this
enough?

Rainer

> 
> I saw warnings about undefined behaviour in aggressive loop
> optimization, not sure if those are the culprit.  If they are, we might
> need to tune down optimization a bit.
> 
> Thanks.
> 
> Cheers,
> Matthias



More information about the freebsd-ports mailing list