Search code examples
iosswiftxcodecocoapodsaudiokit

Linking Errors after adding AudioKit via CocoaPods


I've developed a simple app that displays the live audio signal in a graph.
I installed AudioKit via CocoaPods with

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '13.4'
pod 'AudioKit', '=5.0.b1'

Everything works perfectly fine and now I want to integrate this functionality into an other App.
This is where my problem begins. As soon as I ad the AudioKit pod to my other project I get linking errors. I'm not even using AudioKit in my code yet. I just edit my Podfile and use pod update.

This is what I get:

Undefined symbols for architecture x86_64: "_swiftoverride_class_getSuperclass(swift::TargetMetadataswift::InProcess const*)", referenced from: swift::swift50override_conformsToProtocol(swift::TargetMetadataswift::InProcess const*, swift::TargetProtocolDescriptorswift::InProcess const*, swift::TargetWitnessTableswift::InProcess const* ()(swift::TargetMetadataswift::InProcess const, swift::TargetProtocolDescriptorswift::InProcess const*)) in libswiftCompatibility50.a(ProtocolConformance.cpp.o) "swift::swift51override_conformsToSwiftProtocol(swift::TargetMetadataswift::InProcess const*, swift::TargetProtocolDescriptorswift::InProcess const*, llvm::StringRef, swift::TargetProtocolConformanceDescriptorswift::InProcess const* ()(swift::TargetMetadataswift::InProcess const, swift::TargetProtocolDescriptorswift::InProcess const*, llvm::StringRef))", referenced from: _Swift50Overrides in libswiftCompatibility50.a(Overrides.cpp.o) ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

After removing AudioKit from my Podfile and updating, everything is working again.
The only other pod I use is this SideMenu.

My specs:
MacBook Pro 13 (2019, Big Sur 11.1, i5 1.4 GHz)
Xcode 12.3 (12C33)
CocoaPods 1.9.1


Solution

  • You may want to try to switch to version 5.0.b2 instead of b1 - it was updated more recently and it's possible the old binary is having issues with Xcode 12.

    Also you should upgrade to the latest CocoaPods - version 1.10 or later is required for proper XCFramework support, which is what the AudioKit pod uses.