我从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'未声明(首次使用此功能)
我错过了什么吗?
答案 0 :(得分: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)*/
其他有趣的来自Google编入索引的其他开源Apple项目。