2

我已经从 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
4

1 回答 1

1

看起来这个项目从未移植到 CYGWIN 的 gcc 环境中。

任何一个

  1. 从项目中了解它们如何(或是否)支持任何 Windows C 编译器并使用它。根据他们的网站,看起来他们支持 MinGW—— http://www.mingw.org/
  2. 自己移植到 CYGWIN GCC - 开始:“使 typedefs.h 适应您的平台”
于 2011-09-08T12:09:13.553 回答