gpt4 book ai didi

macos - 尝试编译 RtAudio 时出现 undefined symbol

转载 作者:行者123 更新时间:2023-12-04 05:21:05 30 4
gpt4 key购买 nike

我正在尝试同时使用 RtAudio 和 RtMidi。我在同一个文件夹中有 RtAudio.cpp、RtAudio.h、RtHelper.h、RtMidi.cpp 和 RtMidi.h 以及 2 个测试程序,midiprobe.cpp 和 audioprobe.cpp。

使用 default command 编译 midiprobe有效,但是当我尝试对 audioprobe 执行相同操作时测试 RtAudio,我得到错误。

这是我用来编译的内容:

g++ -Wall -D__MACOSX_CORE__ -o audioprobe audioprobe.cpp RtAudio.cpp -framework CoreAudio -lpthread

这些是错误:
Undefined symbols for architecture x86_64:
"_CFRelease", referenced from:
RtApiCore::getDeviceInfo(unsigned int)in cc89M9Ki.o
"_CFStringGetCString", referenced from:
RtApiCore::getDeviceInfo(unsigned int)in cc89M9Ki.o
"_CFStringGetLength", referenced from:
RtApiCore::getDeviceInfo(unsigned int)in cc89M9Ki.o
"_CFStringGetSystemEncoding", referenced from:
RtApiCore::getDeviceInfo(unsigned int)in cc89M9Ki.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status

我对这类东西很陌生(到目前为止,大多数框架都是现成的)并且还没有弄清楚这一点。由于它是默认示例,因此我真的不知道下一步该做什么......
先谢谢了。

最佳答案

缺少的符号在 CoreFoundation 框架中 - 您需要添加:

-framework CoreFoundation

到您的命令行。

关于macos - 尝试编译 RtAudio 时出现 undefined symbol ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13683581/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com