获取使用标准C在Mac OS X操作系统版本 [英] Getting the OS version in Mac OS X using standard C
本文介绍了获取使用标准C在Mac OS X操作系统版本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图让编程C中的Mac OS X版本搜索了一段时间后,我想这code:
I'm trying to get the version of Mac OS X programmatically in C. After searching for a while I tried this code:
#include <CoreServices/CoreServices.h>
int GetOS()
{
SInt32 majorVersion,minorVersion,bugFixVersion;
Gestalt(gestaltSystemVersionMajor, &majorVersion);
Gestalt(gestaltSystemVersionMinor, &minorVersion);
Gestalt(gestaltSystemVersionBugFix, &bugFixVersion);
printf("Running on Mac OS X %d.%d.%d\n",majorVersion,minorVersion,bugFixVersion);
return 0;
}
X code回到一个LD错误:
XCode returns an LD error:
适用于建筑x86_64的未定义符号:
_Gestalt,从引用:
在main.o中_GetOS
我在想什么?你怎么做到这一点?
What am I missing? How do you do this?
我也发现这个片段
[[NSProcessInfo processInfo] operatingSystemVersionString]
但我不知道怎么写,在C
But I have no idea how to write that in C.
推荐答案
你有没有通过适当的框架,海湾合作委员会,以使 CoreServices
?
Did you pass the appropriate framework to GCC in order to enable CoreServices
?
% gcc -framework CoreServices -o getos main.c
这篇关于获取使用标准C在Mac OS X操作系统版本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文