1

我从 Apple 下载 Mac OS 网络 ping 源代码:http ://www.opensource.apple.com/tarballs/network_cmds/network_cmds-356.8.tar.gz

并在 xcode 中编译它,但在 10.7 和 10.6 中都出现错误,

'IP_NO_IFT_CELLULAR' 未声明(在此函数中首次使用)
'SO_TRAFFIC_CLASS' 未声明(在此函数中首次使用)
'SO_RECV_TRAFFIC_CLASS' 未声明(在此函数中首次使用)
'SO_TRAFFIC_CLASS' 未声明(在此函数中首次使用)

我错过了什么?

4

1 回答 1

1

我认为您可能需要将网络框架导入您的项目,但 Apple 没有提供有关您下载的项目的任何描述或信息。

为后代着想:要添加框架,请选择左上角的项目,然后单击您的目标,从结果页面顶部选择“构建阶段”,“将二进制文件与库链接”,“+”。

通过将以下内容添加到 ping.c 文件(标记有错误的文件)中,我终于在详尽的谷歌搜索后设法构建它:

#define IP_NO_IFT_CELLULAR  6969 /* for internal use only */
#define IP_NO_IFT_PDP       IP_NO_IFT_CELLULAR /* deprecated */
#define SO_TRAFFIC_CLASS        0x1086      /* Traffic class (int)*/
#define SO_RECV_TRAFFIC_CLASS   0x1087      /* Receive traffic class (bool)*/

有趣的是,它来自谷歌索引的其他开源苹果项目。

于 2012-01-08T16:38:19.337 回答