我正在尝试使用Clang在macOS上构建一个C ++应用程序。我正在使用CoreAudio API,因此我需要链接CoreServices框架。但是,我收到以下错误:
clang:错误:未知参数:' - framework CoreServices'
这是我的Clang版本:
clang --version
clang version 3.9.1 (tags/RELEASE_391/final)
Target: x86_64-apple-darwin16.4.0
Thread model: posix
InstalledDir: /usr/local/bin
这些是我的链接器标志:
-framework CoreServices
我在这里做错了什么?
答案 0 :(得分:4)
以下程序代码打印出输出设备占用的大小(这只是为了使用CoreAudio API的某些功能):
this.setState
此C ++程序可使用以下命令进行编译:
// main.cpp
#include <cstdlib>
#include <cstdio>
#include <CoreAudio/CoreAudio.h>
#include <CoreServices/CoreServices.h>
int
main (void)
{
AudioObjectPropertyAddress property = {
kAudioHardwarePropertyDevices,
kAudioObjectPropertyScopeGlobal,
kAudioObjectPropertyElementMaster
};
OSStatus status;
UInt32 size;
status = AudioObjectGetPropertyDataSize(
kAudioObjectSystemObject,
&property,
0,
NULL,
&size);
printf("status(%d), size: %d\n", status, size);
return EXIT_SUCCESS;
}
并会生成一个clang -framwork CoreServices -framework CoreAudio main.cpp
可执行文件,然后可以使用
a.out