When I try to run Audacity it failed with assertion errors, then segfaulted. Reproducible: Always Steps to Reproduce: 1. attempt to run audacity Actual Results: bash-2.05b# audacity (audacity:26834): Gtk-CRITICAL **: file gtkaccellabel.c: line 213 (gtk_accel_label_new): assertion `string != NULL' failed (audacity:26834): Gtk-CRITICAL **: file gtkmisc.c: line 210 (gtk_misc_set_alignment): assertion `GTK_IS_MISC (misc)' failed (audacity:26834): Gtk-CRITICAL **: file gtkcontainer.c: line 947 (gtk_container_add): assertion `GTK_IS_WIDGET (widget)' failed (audacity:26834): Gtk-CRITICAL **: file gtkaccellabel.c: line 399 (gtk_accel_label_set_accel_widget): assertion `GTK_IS_ACCEL_LABEL (accel_label)' failed Segmentation fault Expected Results: Audacity should load. I had to remerge wxGTK without the unicode option, so I'm uncertain if that may be related. Portage 2.0.50-r1 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3_pre20040207-r0, 2.6.1-mm3) ================================================================= System uname: 2.6.1-mm3 i686 AMD Athlon(tm) Processor Gentoo Base System version 1.4.3.13 Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-tbird -O2 -pipe -mmmx -m3dnow -mno-sse" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=athlon-tbird -O2 -pipe -mmmx -m3dnow -mno-sse" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dfx 3dnow X Xaw3d aalib acl acpi acpi4linux alsa avi canna cdr cjk crypt dga directfb dnd dv dvd encode evo fastcgi fbcon ffmpeg fftw flac fltk freewnn gd gdbm ggi gif gpm gtk gtk2 imap imlib ipv6 java javascript jbig jpeg junit mad matroska mbox md5sum mikmod mmx moznocompose moznoirc moznomail mpeg ncurses nls odbc oggvorbis opengl pam pdflib perl png python qt quicktime readline ruby sdk sdl snmp ssl svga tcltk tcpd tetex tiff truetype usb vim-with-x wmf wxwindows x86 xgetdefault xine xml xml2 xmms xosd xv xvid zlib"
what version of audacity are you running? I assume you mean you re-emerged wxgtk before audacity. Can you provide us with a backtrace for the segfault?
Yes, I re-emerged wxGTK because it wouldn't even attempt to emerge initially due to the unicode flag I set previously (which was unset when I rebuilt wxGTK and emerged in Audacity). I tried both Audacity 1.2.0_pre3 and 1.2.0_pre4 with the same results. (Currently I have 1.2.0_pre4 installed) backtrace reveils this: #0 0x40af990a in gtk_widget_show () from /usr/lib/libgtk-x11-2.0.so.0 #1 0x40a2b66a in gtk_menu_item_new_with_label () from /usr/lib/libgtk-x11-2.0.so.0 #2 0x40438b5f in wxChoice::GtkAppendHelper(_GtkWidget*, wxString const&) () from /usr/lib/libwx_gtk2-2.4.so #3 0x40437c0f in wxChoice::Create(wxWindow*, int, wxPoint const&, wxSize const&, int, wxString const*, long, wxValidator const&, wxString const&) () from /usr/lib/libwx_gtk2-2.4.so #4 0x08090edd in wxListItem::GetClassInfo() const () #5 0x0808ff4f in wxListItem::GetClassInfo() const () #6 0x08066b4d in ?? () #7 0x4042f560 in wxEntry(int, char**) () from /usr/lib/libwx_gtk2-2.4.so #8 0x0806636b in ?? () #9 0x40828cc1 in __libc_start_main () from /lib/libc.so.6 #10 0x0805b6a1 in ?? ()
Can you please try 1.2.0 which was just added.
I built & tried 1.2.0, same exact response from backtrace/error.
what version of wxGTK do you have installed? audatcity-1.2.0 will actually work with unicode support so I removed that error message now.
wxGTK-2.4.2 is what I have built
Ok, can you try setting: CFLAGS="-O2 -pipe -g" CXXFLAGS="${CFLAGS} FEATURES="${FEATURES} nostrip keeptemp keepwork" USE="${USE} debug" then re-emerge wxGTK and audacity... if it still fails, give a new backtrace as it should have some more info now. Thanks.
Recompiled and did another backtrace. (gdb) backtrace #0 0x40b4a94a in gtk_widget_show () from /usr/lib/libgtk-x11-2.0.so.0 #1 0x40a7c6aa in gtk_menu_item_new_with_label () from /usr/lib/libgtk-x11-2.0.so.0 #2 0x4044444f in wxChoice::GtkAppendHelper(_GtkWidget*, wxString const&) ( this=0x84b1b90, menu=0x84b41e8, item=@0x84b5aa0) at buffer.h:98 #3 0x40443100 in wxChoice::Create(wxWindow*, int, wxPoint const&, wxSize const&, int, wxString const*, long, wxValidator const&, wxString const&) ( this=0x84b1b90, parent=0xbffff260, id=1, pos=@0x7, size=@0x8282390, n=13, choices=0x84b1b54, style=139139952, validator=@0x1, name=@0x1) at src/gtk/choice.cpp:105 #4 0x08095620 in LangChoiceDialog::LangChoiceDialog(wxWindow*, int, wxString const&) () #5 0x080945cf in ChooseLanguage(wxWindow*) () #6 0x08066d81 in AudacityApp::OnInit() () #7 0x4043a0d0 in wxEntry(int, char**) (argc=1, argv=0x82824d0) at src/gtk/app.cpp:921 #8 0x0806656b in main ()
what character set are you using? Was unicode enabled for wxGTK? What's the output of $ wx-config --cppflags
bash-2.05b$ wx-config --cppflags -I/usr/lib/wx/include/gtk2d-2.4 -D__WXDEBUG__ -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES You reminded me about the character set. I use LC_CTYPE=ja_JP normally. I unset that to test and Audacity ran. This was with wxGTK not compiled for unicode, I should try it as unicode build to make sure it still works.
Hmm... with unicode, the includes are in: /usr/lib/wx/include/gtk2u-2.4 without unicode, they should be in: /usr/lib/wx/include/gtk2-2.4 I wonder what is causing yours to go in: /usr/lib/wx/include/gtk2d-2.4 Try the unicode on and let me know how it goes...
my guess is the gtk2d is probably for debug version. I can't build the unicode. wxGTK built fine by Audacity didn't build. g++ -c -march=athlon-tbird -O2 -pipe -mmmx -m3dnow -mno-sse -I../lib-src/portaudio/pa_common -I../lib-src/portmixer/px_common -I../lib-src/soundtouch/src -march=athlon-tbird -O2 -pipe -mmmx -m3dnow -mno-sse -I../lib-src/expat -I../lib-src/allegro -I../lib-src/libnyquist/nyx -I../lib-src/libresample/include -Wall -Iinclude -I/usr/lib/wx/include/gtk2ud-2.4 -D__WXDEBUG__ -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES BlockFile.cpp -o obj/BlockFile.o BlockFile.cpp: In constructor `AliasBlockFile::AliasBlockFile(wxFileName, wxFileName, int, int, int)': BlockFile.cpp:404: error: ambiguous overload for 'operator+' in ' wxFileName::GetFullPath(wxPathFormat) const(wxPATH_NATIVE) + ".auf"' /usr/include/wx/string.h:1241: error: candidates are: wxString operator+(const wxString&, const wxString&) <near match> /usr/include/wx/string.h:1242: error: wxString operator+(const wxString&, wchar_t) <near match> /usr/include/wx/string.h:1243: error: wxString operator+(wchar_t, const wxString&) <near match> /usr/include/wx/string.h:1245: error: wxString operator+(const wxChar*, const wxString&) <near match> /usr/include/wx/string.h:1248: error: wxString operator+(const wxString&, const wxWCharBuffer&) <near match> /usr/include/wx/longlong.h:921: error: wxLongLong operator+(long int, const wxLongLong&) <near match> /usr/include/wx/longlong.h:934: error: wxULongLong operator+(long unsigned int, const wxULongLong&) <near match> make[1]: *** [obj/BlockFile.o] Error 1
odd... I buily 1.2.0 with unicode in wxGTK just fine (and hence why I removed the detection that existed prior)... I'll have to reverify that ASAP as that's a bad QA issue. As for the segfault stuff, you should forward that bug upstream (and provide us with a reference to that bug in the URL frield of this bug report). I'll watch it and patch audacity if it's warranted... be sure to mention that changing charsets fixes it, and give them the detailed backtrace.
ok... i don't know what crazy stuff i was on when I tested that audacity worked with unicode'd wxGTK, but it's definately not the case as I just verified... so I put the warnign back in... Did you send an upstream bug yet?
Not yet. Will do later today. I'll have to rebuild wxGTK without unicode and Audacity again then.
After rebuilding wxGTK 2.4.2 without unicode and building Audacity 1.2.0. I can run the program with LC_CTYPE=ja_JP set or unset. The bug has magically vanished into thin air.
oddness... well if you can reproduce it, I'd be interestead in how it came about... thanks.
i had the same problem (my LANG is en_GB.UTF-8), it only happens when running audacity for the first time (without ~/.audacity file). workaround: LANG=C audacity it'll ask what language you want, choose the language and exit. after that it'll work with any LANG.
I just got this, too, with: wxGTK-2.4.2-r3 -debug +gtk2 -odbc +opengl -unicode +wxgtk1 audacity-1.2.1 +encode +flac +mad +oggvorbis I rebuilt with -gtk2 and it worked, but looked like poop. Then I rebuilt with +gtk2 and -wxgtk1 and it works and looks good. So for me it not only is unicode incompatible, but also won't work with both gtk2 and wxgtk1 USE flags enabled. So that's four compiles of both wxGTK and audacity that it took for me to get what I wanted. :) Way fun on my old computer. :p