superpoweredSDK / Low-Latency-Android-iOS-Linux-Windows-tvOS-macOS-Interactive-Audio-Platform

🇸Superpowered Audio, Networking and Cryptographics SDKs. High performance and cross platform on Android, iOS, macOS, tvOS, Linux, Windows and modern web browsers.

Home Page:https://superpowered.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

iOS: Xcode does not found symbols for architecture x86_64 and arm64

AndrewRudyk opened this issue · comments

Hello!
I have installed Superpowered SDK v2.5 using this tutorial: https://docs.superpowered.com/getting-started/how-to-integrate/ios?lang=cpp
But after building Xcode 13.1 it shows error for iOS Simulator:

Undefined symbols for architecture x86_64:
  "_CMBlockBufferGetDataLength", referenced from:
      Superpowered::fillBuffer(Superpowered::iPodReaderInternals*, opaqueCMSampleBuffer*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
  "_CMBlockBufferCopyDataBytes", referenced from:
      Superpowered::fillBuffer(Superpowered::iPodReaderInternals*, opaqueCMSampleBuffer*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
  "_kCMTimePositiveInfinity", referenced from:
      Superpowered::iPodReader::readAudioBytesUnaligned(unsigned char**, int, int*, int*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
  "_CMSampleBufferGetDataBuffer", referenced from:
      Superpowered::fillBuffer(Superpowered::iPodReaderInternals*, opaqueCMSampleBuffer*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
  "_CMTimeRangeMake", referenced from:
      Superpowered::iPodReader::readAudioBytesUnaligned(unsigned char**, int, int*, int*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
  "_CMAudioFormatDescriptionGetStreamBasicDescription", referenced from:
      Superpowered::iPodReader::open(char const*, bool, Superpowered::audioFormatHelp*, int, int, Superpowered::httpRequest*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
  "_CMSampleBufferGetTotalSampleSize", referenced from:
      Superpowered::iPodReader::open(char const*, bool, Superpowered::audioFormatHelp*, int, int, Superpowered::httpRequest*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
  "_CMAudioFormatDescriptionGetMagicCookie", referenced from:
      Superpowered::iPodReader::open(char const*, bool, Superpowered::audioFormatHelp*, int, int, Superpowered::httpRequest*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
  "_CMSampleBufferGetPresentationTimeStamp", referenced from:
      Superpowered::iPodReader::open(char const*, bool, Superpowered::audioFormatHelp*, int, int, Superpowered::httpRequest*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
      Superpowered::iPodReader::readAudioBytesUnaligned(unsigned char**, int, int*, int*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
  "_CMSampleBufferGetAudioStreamPacketDescriptionsPtr", referenced from:
      Superpowered::iPodReader::open(char const*, bool, Superpowered::audioFormatHelp*, int, int, Superpowered::httpRequest*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
      Superpowered::iPodReader::readAudioBytesUnaligned(unsigned char**, int, int*, int*) in libSuperpoweredAudioIOS-iphonesimulator.a(ipodreader.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

and for iPhone device:

Undefined symbols for architecture arm64:
  "_CMBlockBufferGetDataLength", referenced from:
      Superpowered::fillBuffer(Superpowered::iPodReaderInternals*, opaqueCMSampleBuffer*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
  "_CMBlockBufferCopyDataBytes", referenced from:
      Superpowered::fillBuffer(Superpowered::iPodReaderInternals*, opaqueCMSampleBuffer*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
  "_kCMTimePositiveInfinity", referenced from:
      Superpowered::iPodReader::readAudioBytesUnaligned(unsigned char**, int, int*, int*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
  "_CMSampleBufferGetDataBuffer", referenced from:
      Superpowered::fillBuffer(Superpowered::iPodReaderInternals*, opaqueCMSampleBuffer*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
  "_CMTimeRangeMake", referenced from:
      Superpowered::iPodReader::readAudioBytesUnaligned(unsigned char**, int, int*, int*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
  "_CMAudioFormatDescriptionGetStreamBasicDescription", referenced from:
      Superpowered::iPodReader::open(char const*, bool, Superpowered::audioFormatHelp*, int, int, Superpowered::httpRequest*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
  "_CMSampleBufferGetTotalSampleSize", referenced from:
      Superpowered::iPodReader::open(char const*, bool, Superpowered::audioFormatHelp*, int, int, Superpowered::httpRequest*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
  "_CMAudioFormatDescriptionGetMagicCookie", referenced from:
      Superpowered::iPodReader::open(char const*, bool, Superpowered::audioFormatHelp*, int, int, Superpowered::httpRequest*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
  "_CMSampleBufferGetPresentationTimeStamp", referenced from:
      Superpowered::iPodReader::open(char const*, bool, Superpowered::audioFormatHelp*, int, int, Superpowered::httpRequest*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
      Superpowered::iPodReader::readAudioBytesUnaligned(unsigned char**, int, int*, int*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
  "_CMSampleBufferGetAudioStreamPacketDescriptionsPtr", referenced from:
      Superpowered::iPodReader::open(char const*, bool, Superpowered::audioFormatHelp*, int, int, Superpowered::httpRequest*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
      Superpowered::iPodReader::readAudioBytesUnaligned(unsigned char**, int, int*, int*) in libSuperpoweredAudioIOS-iphoneos.a(ipodreader.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Could you please advise what can I do to solve this?

Your example project for iOS from repository was built successfully. I cannot understand why

Check out the iOS frameworks in the example project. You've a system framework missing.

What "system framework" do you mean?

Core Audio, Audiotoolbox, Foundation, etc. The typical stuff you set up at Build Phases, Link Binary With Libraries.

I did it several times :)
image
image

It would be great to have package for Swift Package Manager or CocoaPod

I have repeated Superpowered installation on computer with M1 cpu (previous was on intel cpu) and it was successful.
Probably my 1st unsuccessful attempt was a temporary issue