When I try to run Ardour8, I get the following error:
Ardour8.1.0 (built using 8.1 and GCC version 6.3.0 20170516)
Ardour: [INFO]: Your system is configured to limit Ardour to 524288 open files
terminate called after throwing an instance of 'Glib::ConvertError'
fish: Job 1, 'Ardour8' terminated by signal SIGABRT (Abort)
I have tried both the version on the Arch Linux repositories, as well as the demo.
I am running Arch 6.5.7-arch1-1, all packages are up to date, DE is wlroots/sway with X11 support.
Ardour8 --gdb
> handle SIG32 noprint nostop
> catch throw
> run
// ardour starts and when Glib::ConvertError is reached
// gdb returns you to the command prompt. now get a backtrace:
> bt
I tried both LANG=en_US.UTF-8 and LANG=C; no change.
“bt” command generates this:
Thread 1 "ardour-8.1.0" hit Catchpoint 1 (exception thrown), 0x00007fffe8eb03b1 in __cxxabiv1::__cxa_throw (obj=0x555556a151a0,
tinfo=0x55555691bcd0 <typeinfo for Glib::ConvertError>,
dest=0x7ffff6bb7a30 <Glib::ConvertError::~ConvertError()>)
at /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/eh_throw.cc:81
Download failed: Invalid argument. Continuing without source file /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/eh_throw.cc.
(gdb) bt
#0 0x00007fffe8eb03b1 in __cxxabiv1::__cxa_throw (obj=0x555556a151a0,
tinfo=0x55555691bcd0 <typeinfo for Glib::ConvertError>,
dest=0x7ffff6bb7a30 <Glib::ConvertError::~ConvertError()>)
at /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/eh_throw.cc:81
#1 0x00007ffff3242987 in Glib::ConvertError::throw_func(_GError*) ()
from /opt/Ardour-8.1.0-demo/lib/libglibmm-2.4.so.1
#2 0x00007ffff32572e7 in Glib::Error::throw_exception(_GError*) ()
from /opt/Ardour-8.1.0-demo/lib/libglibmm-2.4.so.1
#3 0x00007ffff3242828 in Glib::filename_to_uri(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) ()
from /opt/Ardour-8.1.0-demo/lib/libglibmm-2.4.so.1
#4 0x00007ffff6a83bb1 in ARDOUR::AudioLibrary::AudioLibrary() ()
from /opt/Ardour-8.1.0-demo/lib/libardour.so.3
#5 0x00007ffff6bebf37 in ARDOUR::init(bool, char const*, bool) ()
from /opt/Ardour-8.1.0-demo/lib/libardour.so.3
#6 0x000055555589d1af in ?? ()
#7 0x00007ffff5445cd0 in ?? () from /usr/lib/libc.so.6
#8 0x00007ffff5445d8a in __libc_start_main () from /usr/lib/libc.so.6
#9 0x00005555558a4f6a in ?? ()
“thread apply all bt” command generates this:
Ardour8.1.0 (built using 8.1 and GCC version 6.3.0 20170516)
[New Thread 0x7ffff65066c0 (LWP 1095239)]
Ardour: [INFO]: Your system is configured to limit Ardour to 524288 open files
Thread 1 "ardour-8.1.0" received signal SIGABRT, Aborted.
0x00007ffff54ac83c in ?? () from /usr/lib/libc.so.6
(gdb) trh hread apply all bt
Thread 2 (Thread 0x7ffff65066c0 (LWP 1095239) "Trigger Worker"):
#0 0x00007ffff5520f6f in poll () from /usr/lib/libc.so.6
#1 0x00007ffff423a257 in CrossThreadChannel::poll_for_request() () from /opt/Ardour-8.1.0-demo/lib/libpbd.so.4
#2 0x00007ffff423a2b6 in CrossThreadChannel::receive(char&, bool) () from /opt/Ardour-8.1.0-demo/lib/libpbd.so.4
#3 0x00007ffff6fccefc in ARDOUR::TriggerBoxThread::thread_work() () from /opt/Ardour-8.1.0-demo/lib/libardour.so.3
#4 0x00007ffff6fcd25e in ARDOUR::TriggerBoxThread::_thread_work(void*) () from /opt/Ardour-8.1.0-demo/lib/libardour.so.3
#5 0x00007ffff4268226 in ?? () from /opt/Ardour-8.1.0-demo/lib/libpbd.so.4
#6 0x00007ffff54aa9eb in ?? () from /usr/lib/libc.so.6
#7 0x00007ffff552e7cc in ?? () from /usr/lib/libc.so.6
Thread 1 (Thread 0x7ffff7a35f00 (LWP 1095236) "ardour-8.1.0"):
#0 0x00007ffff54ac83c in ?? () from /usr/lib/libc.so.6
#1 0x00007ffff545c668 in raise () from /usr/lib/libc.so.6
#2 0x00007ffff54444b8 in abort () from /usr/lib/libc.so.6
#3 0x00007fffe8e9ca6f in __gnu_cxx::__verbose_terminate_handler () at /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/vterminate.cc:95
#4 0x00007fffe8eb011c in __cxxabiv1::__terminate (handler=<optimized out>) at /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/eh_terminate.cc:48
#5 0x00007fffe8eb0189 in std::terminate () at /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/eh_terminate.cc:58
#6 0x00007fffe8eb03ed in __cxxabiv1::__cxa_throw (obj=<optimized out>, tinfo=0x55555691bcd0 <typeinfo for Glib::ConvertError>, dest=0x7ffff6bb7a30 <Glib::ConvertError::~ConvertError()>) at /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/eh_throw.cc:98
#7 0x00007ffff3242987 in Glib::ConvertError::throw_func(_GError*) () from /opt/Ardour-8.1.0-demo/lib/libglibmm-2.4.so.1
#8 0x00007ffff32572e7 in Glib::Error::throw_exception(_GError*) () from /opt/Ardour-8.1.0-demo/lib/libglibmm-2.4.so.1
#9 0x00007ffff3242828 in Glib::filename_to_uri(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) () from /opt/Ardour-8.1.0-demo/lib/libglibmm-2.4.so.1
#10 0x00007ffff6a83bb1 in ARDOUR::AudioLibrary::AudioLibrary() () from /opt/Ardour-8.1.0-demo/lib/libardour.so.3
#11 0x00007ffff6bebf37 in ARDOUR::init(bool, char const*, bool) () from /opt/Ardour-8.1.0-demo/lib/libardour.so.3
#12 0x000055555589d1af in ?? ()
#13 0x00007ffff5445cd0 in ?? () from /usr/lib/libc.so.6
#14 0x00007ffff5445d8a in __libc_start_main () from /usr/lib/libc.so.6
#15 0x00005555558a4f6a in ?? ()
All paths set in these environment variables must be absolute.
You could set XDG_CONFIG_HOME=$HOME/.config (but that’s the default already). It seems that ~ relative path cause issues when trying to convert them to URIs.