I just noticed Inkscape SEGFAULTs when linked with latest version of binutils (2.30-1) updated today in 319eadd3f43a551b0c6cb82092ed4cf682278a87. Last version (2.29.1-1) was working fine.
Unless binutils changed in a way that requires a full rebuild that can not be detected by ninja/ccache I'm afraid the new version might be broken...
@Alexpux do you have an idea?
Backtrace:
Thread 1 received signal SIGSEGV, Segmentation fault.
0x000000006fd0163a in ?? ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libstdc++-6.dll
(gdb) bt
#0 0x000000006fd0163a in ?? ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libstdc++-6.dll
#1 0x0000000004149076 in std::_Rb_tree<char const*, std::pair<char const* const, Inkscape::Extension::Extension*>, std::_Select1st<std::pair<char const* const, Inkscape::Extension::Extension*> >, Inkscape::Extension::DB::ltstr, std::allocator<std::pair<char const* const, Inkscape::Extension::Extension*> > >::_M_get_insert_unique_pos(char const* const&) ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libinkscape_base.dll
#2 0x00000000041491b3 in std::_Rb_tree<char const*, std::pair<char const* const, Inkscape::Extension::Extension*>, std::_Select1st<std::pair<char const* const, Inkscape::Extension::Extension*> >, Inkscape::Extension::DB::ltstr, std::allocator<std::pair<char const* const, Inkscape::Extension::Extension*> > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<char const* const, Inkscape::Extension::Extension*> >, char const* const&) ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libinkscape_base.dll
#3 0x00000000036f3022 in Inkscape::Extension::DB::register_ext(Inkscape::Extension::Extension*) ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libinkscape_base.dll
#4 0x00000000036f87a0 in Inkscape::Extension::Extension::Extension(Inkscape::XML::Node*, Inkscape::Extension::Implementation::Implementation*) ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libinkscape_base.dll
#5 0x00000000036f8e88 in Inkscape::Extension::Input::Input(Inkscape::XML::Node*, Inkscape::Extension::Implementation::Implementation*) ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libinkscape_base.dll
#6 0x00000000036fbe0b in Inkscape::Extension::build_from_reprdoc(Inkscape::XML::Document*, Inkscape::Extension::Implementation::Implementation*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libinkscape_base.dll
#7 0x00000000036fc588 in Inkscape::Extension::build_from_mem(char const*, Inkscape::Extension::Implementation::Implementation*) ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libinkscape_base.dll
#8 0x0000000003753af8 in Inkscape::Extension::Internal::Svg::init() ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libinkscape_base.dll
#9 0x00000000036f8922 in Inkscape::Extension::init() ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libinkscape_base.dll
#10 0x0000000003cd7d44 in Inkscape::Application::Application(char const*, bool) ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libinkscape_base.dll
#11 0x0000000003cd8912 in Inkscape::Application::create(char const*, bool) ()
from E:\Temp\Inkscape\inkscape.git\master\build64\inkscape\libinkscape_base.dll
#12 0x00000000004062b4 in sp_main_gui(int, char const**) ()
#13 0x000000000040e651 in main ()
I don't trust ccache on Windows, few times it caused programs to segfault when I had shared cache for 32 and 64 bit builds.
Could you try debug build with disabled optimizations?
Tried to compile and run of gtk application which is using GResource after today updates.
app fails to start due ui resource fails to load.
On second box I've updated everything but binutils package and application starts without problems.
Ok, I will downgrade binutils package in repo today
For future reference, gtk3-widget-factory.exe crashes with the new binutils, and gdb crashes if you start it and type "bt".
Looks like it's downgraded now.
How do you downgrade if you took the broken version ?
pacman -Suuy
Thanks. Just found out the same.
I guess this is "fixed" now.
Fixed how?
I guess we want to update binutils eventually. Did anybody figure out what broke the builds before?
(fixed in the sense that the users referencing this issue and most of those subscribed are happy again now, but ok, reopened)
Probably related: x265 builds with HEVC encoder version & build info = (null)
I'm guessing this is binutils bug #22762.
Confirmed, adding the upstream patch resolves the issue.
Thanks @ssbssa for finding the culprit!
See #3353 for the relevant PR.
Most helpful comment
I'm guessing this is binutils bug #22762.