Xcode Audiocomponent 符号未找到且无法使用方法

0 audio xcode core-audio

我是 C++ 编码新手,我只用 php 和 Java 编程,但我想了解更多东西。从音频开始可能不是最好的选择,但我已经知道编程是如何工作的。

但是,我想测试一下,从苹果网站获取一些代码,看看会发生什么。我将代码的开头粘贴到我的项目中并出现错误。我真的不知道它们的意思,搜索也没有给我任何结果。

这就是代码:

#include <iostream>
#include <CoreAudio/CoreAudio.h>
#include <AudioToolbox/AudioToolbox.h>
#include <AudioUnit/AudioUnit.h>

int main(int argc, const char * argv[]) {
  // insert code here...
  AudioComponent comp;
  AudioComponentDescription desc;
  AudioComponentInstance auHAL;
  //There are several different types of Audio Units.
  //Some audio units serve as Outputs, Mixers, or DSP
  //units. See AUComponent.h for listing
  desc.componentType = kAudioUnitType_Output;
  //Every Component has a subType, which will give a clearer picture
  //of what this components function will be.
  desc.componentSubType = kAudioUnitSubType_HALOutput;
  //all Audio Units in AUComponent.h must use
  //"kAudioUnitManufacturer_Apple" as the Manufacturer
  desc.componentManufacturer = kAudioUnitManufacturer_Apple;
  desc.componentFlags = 0;
  desc.componentFlagsMask = 0;
  //Finds a component that meets the desc spec's
  comp = AudioComponentFindNext(NULL, & desc);
  if (comp == NULL) exit(-1);
  //gains access to the services provided by the component
  AudioComponentInstanceNew(comp, & auHAL);
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

这些是我得到的错误:

Undefined symbols for architecture x86_64:
"_AudioComponentFindNext", referenced from:
  _main in main.o
"_AudioComponentInstanceNew", referenced from:
  _main in main.o
 ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)

谢谢你的协助!

adm*_*syn 6

您需要将AudioUnitCoreAudioAudioToolbox框架添加到您的项目中。请参阅此答案以获取有关如何执行此操作的帮助。

如果这是您第一次接触 C++,那么您肯定会陷入困境。祝你好运!