【发布时间】:2017-01-10 13:15:54
【问题描述】:
对于 uni 项目,我必须使用 1996 年 GSM 语音编码标准中提供的 ANSI C 代码。 zip存档可以在这里找到 https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=281
我有一台运行 OS X 10.11.6 的 MacBook Pro。
当尝试使用clang在终端中安装xcode编译其/C目录(主目录)中的所有不同文件时:
clang dtx.c err_conc.c globdefs.c gsm_hr.c homing.c host.c mathdp31.c mathhalf.c sp_dec.c sp_enc.c sp_frm.c SP_rom.c sp_sfrm.c utils.c vad.c male.inp -o GSMHR
它给出了多个错误,例如:
In file included from dtx.c:37:
./mathhalf.h:75:11: warning: incompatible redeclaration of library function 'round' [-Wincompatible-library-redeclaration]
Shortword round(Longword L_var1); /* 1 ops */
我认为这是因为新编译器定义了当时未定义的函数?
无论如何,让这段代码可用的最简单方法是什么?
【问题讨论】:
-
-std=c89选项是否让您失败了? -
在做类似工作的时候,我使用“sed”来重命名下载文件中所有冲突的函数。