我已经从 3GPP 网站下载了 AMR 源代码。
当我试图在不进行任何修改的情况下编译它时,我收到错误
无法确定架构;使 typedefs.h 适应您的平台
D:\AMR_3Gpp\26073-800\c-code> make
rm -f *.o core
rm -f *.a encoder decoder
gcc -c -Wall -pedantic-errors -I. -O3 -DWMOPS=0 -DVAD1 agc.c
In file included from typedef.h:50,
from agc.h:24,
from agc.c:20:
typedefs.h:179:2: error: #error "can't determine architecture; adapt typedefs.h to your platform"
In file included from agc.c:31:
basic_op.h:33: warning: conflicting types for built-in function `round'
make: *** [agc.o] Error 1
D:\AMR_3Gpp\26073-800\c-code>
我在 Windows 机器上使用 cygwin。因此,如果有人知道或遇到此错误“无法确定架构;使 typedefs.h 适应您的平台”。请帮我解决它。
谢谢和问候,
SSuman185
/*
********* Check current platform
*/
#if defined(__MSDOS__)
#define PC
#define PLATFORM "PC"
#define LSBFIRST
#elif defined(__osf__)
#define OSF
#define PLATFORM "OSF"
#define LSBFIRST
#elif defined(__sun__) || defined(__sun)
#define SUN
#define PLATFORM "SUN"
#undef LSBFIRST
#elif defined(linux) && defined(i386)
#define PC
#define PLATFORM "PC"
#define LSBFIRST
#else
#error "can't determine architecture; adapt typedefs.h to your platform"
#endif