Cannot build Audacity 3.3.1 in FC38

I upgraded my FC37 machine to FC38, and my build of Audacity 3.0.2 died a horrible death, because the libraries got upgraded. So, I went to compile 3.3.1 from the source, and have hit a couple of roadblocks. The first, which is that the audacity-supplied conan doesn’t know about gcc 13, I was able to work around by adding “13” to the list in …/build/.conan/settings.yml That’s probably not ideal, but it got me past that. Now, I’ve got a problem, that I don’t know how to deal with. conan is complaining about python. I’m not sure what to do about this. As far as I can tell, the python that it’s complaining about is fine.

$ cmake -G “Unix Makefiles” -DCMAKE_BUILD_TYPE=Release /usr/local/src/audacity-sources-3.3.1

[ 30%] Linking CXX static library …/…/lib/libbase.a
[ 30%] Built target base
gmake: *** [Makefile:91: all] Error 2
vst3sdk/3.7.3:
vst3sdk/3.7.3: ERROR: Package ‘3dcaac93f3cf6432dc25ae41cd21792a9760e18b’ build failed
vst3sdk/3.7.3: WARN: Build folder /tmp/audacity_build/.conan/data/vst3sdk/3.7.3///build/3dcaac93f3cf6432dc25ae41cd21792a9760e18b
ERROR: vst3sdk/3.7.3: Error in build() method, line 35
cmake.build()
ConanException: Error 2 while executing cmake --build ‘/tmp/audacity_build/.conan/data/vst3sdk/3.7.3///build/3dcaac93f3cf6432dc25ae41cd21792a9760e18b/build’ ‘–’ ‘-j4’
Restoring global Conan config…
Traceback (most recent call last):
File “/usr/local/src/audacity-sources-3.3.1/conan/conan_runner.py”, line 339, in
subprocess.check_call(conan_options)
File “/usr/lib64/python3.11/subprocess.py”, line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command ‘[’/tmp/audacity_build/conan_venv/bin/conan’, ‘install’, ‘/usr/local/src/audacity-sources-3.3.1/conan’, ‘–build=missing’, ‘–install-folder’, ‘/tmp/audacity_build/conan-install-release’, ‘–output-folder’, ‘/tmp/audacity_build’, ‘–remote’, ‘audacity-binaries’, ‘–profile:build’, ‘/tmp/audacity_build/profile-build.profile’, ‘–profile:host’, ‘/tmp/audacity_build/profile-host-release.profile’]’ returned non-zero exit status 1.
CMake Error at cmake-proxies/cmake-modules/AudacityDependencies.cmake:202 (message):
Conan failed to install dependencies (1) /usr/bin/python3.11
Call Stack (most recent call first):
CMakeLists.txt:572 (include)

– Configuring incomplete, errors occurred!

$ /usr/bin/python3.11 --version
Python 3.11.3

Any ideas about what to do next? I’m pretty stuck here…

Thanks.

For help with compiling Audacity, go to the Audacity development discord chat here: Audacity dev

BTW, I believe that Conan 2.0 does not work properly with the latest Audacity build and you need to revert to Conan 1.59.0.

Thanks. I’m using the conan that’s supplied with the Audacity source, so if that’s not 1.59.0, it’s a big problem. I don’t have it installed otherwise. It looks like I’m not the only one having this issue, and others are having it still in 3.3.2.

Again, for help with compiling Audacity, go to the Audacity development discord chat mentioned above.

FYI, several people have posted in that development discord and nobody has yet responded with a solution. I’m going to post updates here, as I have them so other people don’t have to join the discord for no reason…

Here’s the command that’s really failing during the audacity compilation. It’s showing python as failing because this command is being launched from inside of a python script…:

$ /tmp/audacity_build/conan_venv/bin/conan install /usr/local/src/audacity-sources-3.3.1/conan --build=missing --install-folder /tmp/audacity_build/conan-install-release --output-folder /tmp/audacity_build --remote audacity-binaries --profile:build /tmp/audacity_build/profile-build.profile --profile:host /tmp/audacity_build/profile-host-release.profile

This throws a bunch of errors about libstdc++ vs libstc++11 and gcc

I followed the instructions and did this:
$ /tmp/audacity_build/conan_venv/bin/conan profile update settings.compiler.libcxx=libstdc++11 default

Then, to fix the real error of gcc 13 not being supported, I did this:
$ vi ~/.conan/settings.yml
and added “13” to the gcc list. For me it was on line 152, but you might want to search for gcc in there.

HOWEVER, the conan install is still failing with this error:
ERROR: No remote ‘audacity-binaries’ defined in remotes

The conan command was looking for audacity-binaries in my “home” remotes, but I found it in the local .conan/remotes.json, so I copied it (since there was only a default entry. If there had been more, I would have just copied the stanza):
$ cp /tmp/audacity_build_332/.conan/remotes.json ~/.conan

That caused this error:
ERROR: Failed requirement ‘zlib/1.2.11’ from ‘conanfile.py’
ERROR: The remote at ‘https://artifactory.audacityteam.org/artifactory/api/conan/audacity-binaries’ only works with revisions enabled. Set CONAN_REVISIONS_ENABLED=1 or set ‘general.revisions_enabled = 1’ at the ‘conan.conf’. [Remote: audacity-binaries]

So I added:
revisions_enabled=1
in the “[general]” section of the ~/.conan/conan.conf

The build still didn’t complete, but at least this got me past the conan-related errors.

Here’s what I’m getting now:

[ 32%] Built target base
gmake: *** [Makefile:91: all] Error 2
vst3sdk/3.7.3:
vst3sdk/3.7.3: ERROR: Package ‘3dcaac93f3cf6432dc25ae41cd21792a9760e18b’ build failed
vst3sdk/3.7.3: WARN: Build folder /home/Greg/.conan/data/vst3sdk/3.7.3///build/3dcaac93f3cf6432dc25ae41cd21792a9760e18b
ERROR: vst3sdk/3.7.3: Error in build() method, line 35
cmake.build()
ConanException: Error 2 while executing cmake --build ‘/home/Greg/.conan/data/vst3sdk/3.7.3///build/3dcaac93f3cf6432dc25ae41cd21792a9760e18b/build’ ‘–’ ‘-j4’

So, it turns out that the short story is that you CANNOT build audacity with gcc 13 at all anyway, because one of the dependencies, vst3sdk, has an issue with being built with gcc 13.