Ardour 6: Build Error due to hardour

Hi,

I am trying to install Ardour from git, but I ran into a build error. I tried using different commits to exclude the possibility that it is just a bug in a newer version, but even with version 6.8, I still got the following message.

[1124/1159] Compiling session_utils/common.cc

...

/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/../../../../lib/librubberband.so: undefined reference to `std::__throw_bad_array_new_length()@GLIBCXX_3.4.29'
collect2: Error: ld exited with code 1

Waf: Leaving directory `/home/.../ardour_6_8/build'
Build failed
 -> task in 'hardour-6.8.0' failed with exit status 1 (run with -v to display more information)
 -> task in 'ardour6-new_empty_session' failed with exit status 1 (run with -v to display more information)
 -> task in 'ardour6-copy-mixer' failed with exit status 1 (run with -v to display more information)
 -> task in 'ardour6-export' failed with exit status 1 (run with -v to display more information)
 -> task in 'luasession' failed with exit status 1 (run with -v to display more information)
 -> task in 'ardour6-fix_bbtppq' failed with exit status 1 (run with -v to display more information)
 -> task in 'ardour-6.8.0' failed with exit status 1 (run with -v to display more information)

With version 6.9, the error looks slightly different, but is still caused by hardour:

[1125/1162] Compiling session_utils/common.cc

...

/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/../../../../lib/librubberband.so: undefined reference to `std::__throw_bad_array_new_length()@GLIBCXX_3.4.29'
collect2: Error: ld exited with code 1

Waf: Leaving directory `/home/.../ardour_6_9/build'
Build failed
 -> task in 'hardour-6.9.0' failed with exit status 1 (run with -v to display more information)
 -> task in 'luasession' failed with exit status 1 (run with -v to display more information)
 -> task in 'ardour6-copy-mixer' failed with exit status 1 (run with -v to display more information)
 -> task in 'ardour-6.9.0' failed with exit status 1 (run with -v to display more information)

Does someone know what I can do to fix this?

Thank you very much :slight_smile:

I believe that error indicates that your version of the c++ standard library is missing a function required by librubberband.
What version of libstdc++ and the devel package for that do you have installed?
This is what was working on my Fedora installation (although there is a different error in git head related to some const int* to int* casts that I haven’t bothered Paul and Robin with yet, so I would stick with 6.9 for now):

libstdc++-11.2.1-1.fc34.x86_64
libstdc++-devel-11.2.1-1.fc34.x86_64