2
我試圖一起使用RtAudio和RtMidi。我有相同的文件夾RtAudio.cpp,RtAudio.h,RtHelper.h,RtMidi.cpp和RtMidi.h以及2個測試程序midiprobe.cpp和audioprobe.cpp。試圖編譯時未定義的符號RtAudio
編譯midiprobe與default command的作品,但是當我嘗試做相同的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
我是相當新的這種東西(主要是有框架的現成直到現在),還沒有能夠弄清楚這一點呢。由於這是默認的例子,我真的失去了接下來做什麼... 感謝先進。
嘗試添加'-framework CoreFoundation'。 –
是的,解決它,謝謝! –
好 - 很好 - 我已將我的評論轉換爲答案 - 請將此標記爲接受此問題未來訪問者的好處。 –