After some upgrade when I try to start successesfully built audacity-2.4.1, I get this under gdb (and dispite DEBUG=ON option during compilation, no debug symbols somehow): Reading symbols from /usr/local/bin/audacity... (No debugging symbols found in /usr/local/bin/audacity) (gdb) r Starting program: /usr/local/bin/audacity [New LWP 101309 of process 11480] [New LWP 101344 of process 11480] Attempting to connect to Audacity failed...retrying [New LWP 101514 of process 11480] [New LWP 101520 of process 11480] Unhandled unknown exception; terminating the application. 18:13:56: Debug: 1 threads were not terminated by the application. [LWP 101520 of process 11480 exited] [LWP 101514 of process 11480 exited] ^C Thread 1 received signal SIGINT, Interrupt. 0x0000000801b92cdc in _umtx_op_err () from /lib/libthr.so.3 (gdb) where #0 0x0000000801b92cdc in _umtx_op_err () at /lib/libthr.so.3 #1 0x0000000801b86bd5 in __thr_umutex_lock (mtx=0x81443d980, id=100587) at /usr/src/lib/libthr/thread/thr_umtx.c:80 #2 0x0000000801b8cb80 in mutex_lock_sleep (curthread=0x813816000, m=0x81443d980, abstime=0x0) at /usr/src/lib/libthr/thread/thr_mutex.c:695 #3 mutex_lock_common (m=0x81443d980, abstime=<optimized out>, cvattach=false, rb_onlist=<optimized out>) at /usr/src/lib/libthr/thread/thr_mutex.c:729 #4 0x0000000801b8b969 in __pthread_mutex_lock (mutex=0x814432d40) at /usr/src/lib/libthr/thread/thr_mutex.c:748 #5 0x0000000805dc71ea in () at /usr/local/lib/libwx_baseu-3.1.so.3 #6 0x0000000805dc6d8e in wxThread::~wxThread() () at /usr/local/lib/libwx_baseu-3.1.so.3 #7 0x00000000006eaebe in AudioThread::~AudioThread() () #8 0x00000000006de64c in AudioIO::~AudioIO() () #9 0x00000000006de67e in AudioIO::~AudioIO() () #10 0x00000008096ab0c1 in __cxa_finalize (dso=0x0) at /usr/src/lib/libc/stdlib/atexit.c:236 #11 0x00000008096406d1 in exit (status=-1) at /usr/src/lib/libc/stdlib/exit.c:72 #12 0x00000000006aba61 in () (gdb) q A debugging session is active. Inferior 1 [process 11480] will be killed. Quit anyway? (y or n) y What am I experiencing is short time start-up notification (banner) "Audacity" and then it hangs, so I need to ^C it to end the program. I'm not sure where to look for the problem solution hints. I recompiled all direct requisites, tried with empty options… but result is the same and no explanatory errors I see.
Under what OS? 32 or 64 bit? What options did you compile with? What version did you upgrade from?
(In reply to Jack from comment #1) Sorry, my bad. Should have written all that before. 11.4-STABLE FreeBSD 11.4-STABLE #5 r361083 amd64 options tried: - none (almost all OFF, but DEBUG and NYQUIST, although DEBUG seems to not work also, or I do not know how to use it), - default, - and my usual (almost default): DEBUG=off, DOCS=off, FFMPEG=on, FLAC=on, ID3TAG=on, LADSPA=on, LAME=on, LV2=off, MAD=on, MIDI=off, NYQUIST=on, OGG=on, SBSMS=on, SOUNDTOUCH=on, TWOLAME=on, VAMP=on, VORBIS=on, VST=on. By the way, without NYQUIST it did not compile at all. Upgraded from the previous version, do not remember what. I do it rather regularly. Or even may be it was not audacity itself that I upgraded to get it not working. May be it was wx-related or something else? Sorry for that also.
Can you renaming ~/.audacity-data to something else to see if it's a config incompatiblity with the older version?
(In reply to Jack from comment #3) Yes, but this did not help a bit.
Hmmm, I'm not able to get it to hang in 12. I'll need to install a 11.4 machine to test this (and the nyquist).
I can confirm the problem, on 11.4-STABLE FreeBSD 11.4-STABLE #0 r360865, but the backtrace reports a different thread (Thread 1) than the one reported by the OP. I tried rebuilding x11-toolkits/wxgtk31 and audio/audacity and renaming ~/.audacity-data with no luck. I also tried rebuilding the port after reverting to the revision before the last commit and audacity starts normally. $ audacity Attempting to connect to Audacity failed...retrying Unhandled unknown exception; terminating the application. 08:31:32: Debug: 2 threads were not terminated by the application. ./src/unix/threadpsx.cpp(1712): assert "This() == this" failed in TestDestroy(): wxThread::TestDestroy() can only be called in the context of the same thread [in thread 8111b3b00] Assertion failed: (reset), function __cxa_guard_abort, file /usr/src/contrib/libcxxrt/guard.cc, line 174. Abort trap (core dumped) $ /usr/local/bin/gdb `which audacity` audacity.core ... Core was generated by `audacity'. Program terminated with signal SIGABRT, Aborted. #0 0x000000080880ee5a in thr_kill () from /lib/libc.so.7 [Current thread is 1 (LWP 100995)] (gdb) thread apply all bt Thread 5 (LWP 100332): #0 0x0000000801ba126c in _umtx_op_err () at /lib/libthr.so.3 #1 0x0000000801b94f50 in _thr_umtx_timedwait_uint (mtx=0x80169b038, id=<optimized out>, clockid=<optimized out>, abstime=<optimized out>, shared=<optimized out>) at /usr/src/lib/libthr/thread/thr_umtx.c:234 #2 0x0000000801b9ef6b in cond_wait_user (cvp=0x81114dd60, mp=0x8115a6060, abstime=0x7fffdfbfbec8, cancel=1) at /usr/src/lib/libthr/thread/thr_cond.c:305 #3 cond_wait_common (cond=<optimized out>, mutex=<optimized out>, abstime=0x7fffdfbfbec8, cancel=1) at /usr/src/lib/libthr/thread/thr_cond.c:365 #4 0x0000000807baf1cd in g_cond_wait_until () at /usr/local/lib/libglib-2.0.so.0 #5 0x0000000807b32006 in () at /usr/local/lib/libglib-2.0.so.0 #6 0x0000000807b3215d in g_async_queue_timeout_pop () at /usr/local/lib/libglib-2.0.so.0 #7 0x0000000807b8fafe in () at /usr/local/lib/libglib-2.0.so.0 #8 0x0000000807b8e9fa in () at /usr/local/lib/libglib-2.0.so.0 #9 0x0000000801b9307a in thread_start (curthread=0x81114a700) at /usr/src/lib/libthr/thread/thr_create.c:290 #10 0x0000000000000000 in () Thread 4 (LWP 100880): #0 0x0000000808840b7a in _poll () at /lib/libc.so.7 --Type <RET> for more, q to quit, c to continue without paging-- #1 0x0000000801b95ac6 in __thr_poll (fds=0x812229020, nfds=2, timeout=-1) at /usr/src/lib/libthr/thread/thr_syscalls.c:336 #2 0x0000000807b659d1 in () at /usr/local/lib/libglib-2.0.so.0 #3 0x0000000807b65d5f in g_main_loop_run () at /usr/local/lib/libglib-2.0.so.0 #4 0x000000080397fd9b in () at /usr/local/lib/libgio-2.0.so.0 #5 0x0000000807b8e9fa in () at /usr/local/lib/libglib-2.0.so.0 #6 0x0000000801b9307a in thread_start (curthread=0x8111aff00) at /usr/src/lib/libthr/thread/thr_create.c:290 #7 0x0000000000000000 in () Thread 3 (LWP 100284): #0 0x0000000808840b7a in _poll () at /lib/libc.so.7 #1 0x0000000801b95ac6 in __thr_poll (fds=0x8115a3040, nfds=1, timeout=-1) at /usr/src/lib/libthr/thread/thr_syscalls.c:336 #2 0x0000000807b659d1 in () at /usr/local/lib/libglib-2.0.so.0 #3 0x0000000807b65af4 in g_main_context_iteration () at /usr/local/lib/libglib-2.0.so.0 #4 0x0000000807b677a1 in () at /usr/local/lib/libglib-2.0.so.0 #5 0x0000000807b8e9fa in () at /usr/local/lib/libglib-2.0.so.0 #6 0x0000000801b9307a in thread_start (curthread=0x811225800) at /usr/src/lib/libthr/thread/thr_create.c:290 #7 0x0000000000000000 in () Thread 2 (LWP 100918): #0 0x0000000801ba126a in _umtx_op_err () at /lib/libthr.so.3 #1 0x0000000801b94bd5 in __thr_umutex_lock (mtx=0x811106af0, id=100918) at /usr/src/lib/libthr/thread/thr_umtx.c:80 #2 0x0000000801b9af70 in mutex_lock_sleep (curthread=0x811016000, m=0x811106af0, abstime=0x0) at /usr/src/lib/libthr/thread/thr_mutex.c:695 #3 mutex_lock_common (m=0x811106af0, abstime=<optimized out>, cvattach=false, rb_onlist=<optimized out>) at /usr/src/lib/libthr/thread/thr_mutex.c:729 #4 0x0000000801b99d09 in __pthread_mutex_lock (mutex=0x81110b320) at /usr/src/lib/libthr/thread/thr_mutex.c:748 #5 0x0000000805dcadba in () at /usr/local/lib/libwx_baseu-3.1.so.3 #6 0x0000000805dca702 in wxThread::~wxThread() () at /usr/local/lib/libwx_baseu-3.1.so.3 #7 0x00000000006e643e in MidiThread::~MidiThread() () #8 0x00000000006d6f51 in AudioIO::~AudioIO() () #9 0x00000000006d6fae in AudioIO::~AudioIO() () #10 0x000000080887cdc1 in __cxa_finalize (dso=0x0) at /usr/src/lib/libc/stdlib/atexit.c:236 #11 0x000000080880ea41 in exit (status=-1) at /usr/src/lib/libc/stdlib/exit.c:72 #12 0x00000000006a3ab1 in () Thread 1 (LWP 100995): --Type <RET> for more, q to quit, c to continue without paging-- #0 0x000000080880ee5a in thr_kill () at /lib/libc.so.7 #1 0x000000080880ee24 in __raise (s=6) at /usr/src/lib/libc/gen/raise.c:52 #2 0x000000080880ed99 in abort () at /usr/src/lib/libc/stdlib/abort.c:65 #3 0x000000080888a081 in __assert (func=<optimized out>, file=<optimized out>, line=<optimized out>, failedexpr=<optimized out>) at /usr/src/lib/libc/gen/assert.c:51 #4 0x000000080831cd18 in __cxa_guard_abort(guard_t volatile*) (guard_object=<optimized out>) at /usr/src/contrib/libcxxrt/guard.cc:174 #5 0x0000000805d5dcba in () at /usr/local/lib/libwx_baseu-3.1.so.3 #6 0x0000000805dc0fd4 in wxThread::CallEntry() () at /usr/local/lib/libwx_baseu-3.1.so.3 #7 0x0000000805dc0480 in () at /usr/local/lib/libwx_baseu-3.1.so.3 #8 0x0000000801b9307a in thread_start (curthread=0x8111b3b00) at /usr/src/lib/libthr/thread/thr_create.c:290 #9 0x0000000000000000 in () $ make showconfig -C /usr/ports/audio/audacity/ ===> The following configuration options are available for audacity-2.4.1: DEBUG=off: Build with debugging support DOCS=off: Build and/or install documentation FFMPEG=on: FFmpeg support (WMA, AIFF, AC3, APE...) FLAC=on: FLAC lossless audio codec support ID3TAG=on: ID3 v1/v2 tags support LADSPA=off: LADSPA audio plugins support LAME=on: Use lame for import and export support LV2=off: Add LV2 plug-in support MAD=on: Use libmad for mp2/3 decoding support MIDI=on: MIDI support NYQUIST=on: Nyquist synthesis and composition support OGG=on: Ogg media format support SBSMS=off: Use libsbsms for pitch and tempo changing SOUNDTOUCH=on: Use libSoundTouch for pitch and tempo changing TWOLAME=off: Use libtwolame for MP2 export support VAMP=off: Vamp plug-in support VORBIS=on: Ogg Vorbis audio codec support VST=on: VST plug-in support ===> Use 'make config' to modify these settings
(In reply to Barbara Guida from comment #6) Oh, you have .core file? Unlike infinite hang for me (on FreeBSD 11.4-STABLE r362573 amd64, now even upgraded a bit). Tried your line: "thread apply all bt" (with DEBUG=on on audacity and glib20) : /usr/local/bin/gdb92 /usr/local/bin/audacity GNU gdb (GDB) 9.2 [GDB v9.2 for FreeBSD] Copyright (C) 2020 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.4". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from /usr/local/bin/audacity... (No debugging symbols found in /usr/local/bin/audacity) (gdb) r Starting program: /usr/local/bin/audacity [New LWP 101437 of process 75079] [New LWP 101980 of process 75079] Attempting to connect to Audacity failed...retrying [New LWP 101982 of process 75079] [New LWP 101967 of process 75079] Unhandled unknown exception; terminating the application. 14:36:19: Debug: 1 threads were not terminated by the application. [LWP 101967 of process 75079 exited] [LWP 101982 of process 75079 exited] **** <-- infinite hang here **** ^C Thread 1 received signal SIGINT, Interrupt. 0x00000008017a1cdc in _umtx_op_err () from /lib/libthr.so.3 (gdb) thread apply all bt Thread 3 (LWP 101980 of process 75079): #0 0x000000080927865a in _poll () at /lib/libc.so.7 #1 0x0000000801796ac6 in __thr_poll (fds=0x815a29020, nfds=2, timeout=-1) at /usr/src/lib/libthr/thread/thr_syscalls.c:336 #2 0x00000008085b6ff1 in () at /usr/local/lib/libglib-2.0.so.0 #3 0x00000008085b737f in g_main_loop_run () at /usr/local/lib/libglib-2.0.so.0 #4 0x000000080356df4b in () at /usr/local/lib/libgio-2.0.so.0 #5 0x00000008085df4fa in () at /usr/local/lib/libglib-2.0.so.0 #6 0x000000080179407a in thread_start (curthread=0x814637a00) at /usr/src/lib/libthr/thread/thr_create.c:290 #7 0x0000000000000000 in () Thread 2 (LWP 101437 of process 75079): #0 0x000000080927865a in _poll () at /lib/libc.so.7 #1 0x0000000801796ac6 in __thr_poll (fds=0x814fba0e0, nfds=1, timeout=-1) at /usr/src/lib/libthr/thread/thr_syscalls.c:336 #2 0x00000008085b6ff1 in () at /usr/local/lib/libglib-2.0.so.0 #3 0x00000008085b7114 in g_main_context_iteration () at /usr/local/lib/libglib-2.0.so.0 #4 0x00000008085b8d71 in () at /usr/local/lib/libglib-2.0.so.0 #5 0x00000008085df4fa in () at /usr/local/lib/libglib-2.0.so.0 #6 0x000000080179407a in thread_start (curthread=0x813be0300) at /usr/src/lib/l--Type <RET> for more, q to quit, c to continue without paging-- ibthr/thread/thr_create.c:290 #7 0x0000000000000000 in () Thread 1 (LWP 101133 of process 75079): #0 0x00000008017a1cdc in _umtx_op_err () at /lib/libthr.so.3 #1 0x0000000801795bd5 in __thr_umutex_lock (mtx=0x814652980, id=101133) at /usr/src/lib/libthr/thread/thr_umtx.c:80 #2 0x000000080179bb80 in mutex_lock_sleep (curthread=0x813a16000, m=0x814652980, abstime=0x0) at /usr/src/lib/libthr/thread/thr_mutex.c:695 #3 mutex_lock_common (m=0x814652980, abstime=<optimized out>, cvattach=false, rb_onlist=<optimized out>) at /usr/src/lib/libthr/thread/thr_mutex.c:729 #4 0x000000080179a969 in __pthread_mutex_lock (mutex=0x814647d40) at /usr/src/lib/libthr/thread/thr_mutex.c:748 #5 0x00000008059c406a in () at /usr/local/lib/libwx_baseu-3.1.so.3 #6 0x00000008059c39b2 in wxThread::~wxThread() () at /usr/local/lib/libwx_baseu-3.1.so.3 #7 0x000000000095ea6e in AudioThread::~AudioThread() () #8 0x000000000095248c in AudioIO::~AudioIO() () #9 0x00000000009524be in AudioIO::~AudioIO() () #10 0x00000008092b2101 in __cxa_finalize (dso=0x0) at /usr/src/lib/libc/stdlib/atexit.c:236 #11 0x0000000809247711 in exit (status=-1) at /usr/src/lib/libc/stdlib/exit.c:72 --Type <RET> for more, q to quit, c to continue without paging-- #12 0x000000000091f8a1 in () (gdb) q A debugging session is active. Inferior 1 [process 75079] will be killed. Quit anyway? (y or n) y
With the OPTIONS I've reported it crashes. I've tried with MIDI OFF (like in your config if I'm not wrong) because of Thread 2, and with that configuration it hangs.
(In reply to Barbara Guida from comment #8) Yes, you are right, I do not need MIDI in Audacity, I'm satisfied with audio/timidity++ for MIDI rendering for now. Thank you for the clarification but it is also needed in my case to have DEBUG=OFF for a core dump, otherwise it also just hangs.
what version of llvm is being used to compile audacity on 11.4? I'm going to try using that version on 12 and see if it happens on 12 too.
(In reply to Jack from comment #10) I've tried different ones without luck: from base: FreeBSD clang version 10.0.0 (git@github.com:llvm/llvm-project.git llvmorg-10.0.0-0-gd32170dbd5b) Target: x86_64-unknown-freebsd11.4 from ports: clang version 9.0.1 Target: x86_64-portbld-freebsd11.3 from ports: clang version 11.0.0 Target: x86_64-portbld-freebsd11.4
I tried building 2.4.2 and it starts normally. Note that files/patch-cmake-proxies_sbsms_CMakeLists.txt adds ${SSE_FLAG}, but in 2.4.2 it's already added but commented out because of https://bugzilla.audacityteam.org/show_bug.cgi?id=2488. I also would like to report that in my case audio/sndio gets autodetected so I'm getting "Warning: you need LIB_DEPENDS+=libsndio.so:audio/sndio".
Good to hear that 2.4.2 fixes the hanging. Will try and get that in the ports asap.
Created attachment 215973 [details] update to 2.4.2 I'm attaching a simple diff from my 2.4.2 test
(In reply to Barbara Guida from comment #14) Oh, thank you, it works with your patch!
(In reply to gja822 from comment #15) Under gdb it outputs this at the end, suppose it is not crucial. [New LWP 100939 of process 10756] 18:45:54: Debug: LastOpenType is All files 18:45:54: Debug: OverrideExtendedImportByOpenFileDialogChoice is 1 18:45:54: Debug: Appending libav 18:45:54: Debug: Appending libsndfile 18:45:54: Debug: Appending liboggvorbis 18:45:54: Debug: Appending libflac 18:45:54: Debug: Appending libmad 18:45:54: Debug: Appending lof (audacity:10756): Gtk-CRITICAL **: 18:45:54.934: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar [New LWP 100964 of process 10756] [New LWP 100965 of process 10756] [New LWP 100966 of process 10756] [New LWP 100967 of process 10756] [New LWP 100968 of process 10756] [LWP 100967 of process 10756 exited] [LWP 100965 of process 10756 exited] [LWP 100939 of process 10756 exited] [LWP 100964 of process 10756 exited] [LWP 100966 of process 10756 exited] [New LWP 100983 of process 10756] [LWP 100983 of process 10756 exited] 18:46:09: Debug: LastOpenType is All files 18:46:09: Debug: OverrideExtendedImportByOpenFileDialogChoice is 1 18:46:09: Debug: Appending libav 18:46:09: Debug: Appending libsndfile 18:46:09: Debug: Appending liboggvorbis 18:46:09: Debug: Appending libflac 18:46:09: Debug: Appending libmad 18:46:09: Debug: Appending lof (audacity:10756): Gtk-CRITICAL **: 18:46:09.275: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar [LWP 100968 of process 10756 exited] 18:47:44: Debug: Log: Invalid return value 0 for stream protocol 18:47:44: Debug: Log: Invalid return value 0 for stream protocol *** BUG *** In void pixman_region32_init_rect(region_type_t *, int, int, unsigned int, unsigned int): Invalid rectangle passed Set a breakpoint on '_pixman_log_error' to debug *** BUG *** In void pixman_region32_init_rect(region_type_t *, int, int, unsigned int, unsigned int): Invalid rectangle passed Set a breakpoint on '_pixman_log_error' to debug *** BUG *** In void pixman_region32_init_rect(region_type_t *, int, int, unsigned int, unsigned int): Invalid rectangle passed Set a breakpoint on '_pixman_log_error' to debug 18:49:27: Debug: AudioIO::GetBestRate() for playback 18:49:27: Debug: GetBestRate() suggested rate 48000 Hz 18:49:27: Debug: GetBestRate() Returning 48000 Hz [New LWP 100927 of process 10756] [LWP 100927 of process 10756 exited] [New LWP 100928 of process 10756] [LWP 101753 of process 10756 exited] [LWP 101731 of process 10756 exited] [LWP 100619 of process 10756 exited] [LWP 100241 of process 10756 exited] [LWP 100928 of process 10756 exited] --Type <RET> for more, q to quit, c to continue without paging-- [Inferior 1 (process 10756) exited normally] (gdb) q
Created new pr https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=247604 to upgrade the port.
^Triage: Assign to committer resolving (via bug 247604)
Does the upgraded port resolve the hanging?
^Triage: submitter feedback timeout (2 months).