Я получаю ошибку make для исходного кода AMR - PullRequest
2 голосов
/ 08 сентября 2011

Я скачал исходный код AMR с веб-сайта 3GPP.
Когда я пытаюсь скомпилировать его без каких-либо изменений, я получаю сообщение об ошибке
не может определить архитектуру; адаптируйте 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>

Я использую cygwin на машине с Windows. Так что, если кто-то знает или сталкивался с этой ошибкой "не может определить архитектуру; адаптируйте 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

1 Ответ

1 голос
/ 08 сентября 2011

Похоже, этот проект никогда не был перенесен в среду gcc CYGWIN.

Или

  1. Узнайте из проекта, как (или если) они поддерживают какой-либо компилятор Windows C, и используйте его. По их словам, похоже, что они поддерживают MinGW - http://www.mingw.org/
  2. Портируйте на CYGWIN GCC самостоятельно - для начала: "адаптируйте typedefs.h к вашей платформе"
...