2011-09-08 3 views
2

AMR 소스 코드를 3GPP 웹 사이트에서 다운로드했습니다.
어떤 수정없이 컴파일하려고하면 오류가 발생합니다.
아키텍처를 결정할 수 없습니다. 귀하의 플랫폼에 맞게 typedefs.h을 수정하십시오.AMR에 대한 오류가 발생합니다. 소스 코드

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이 프로젝트는 Cygwin에서의 gcc가 환경에 포팅되지 않았다처럼 보이는


/* 
********* 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 
+0

봐 "플랫폼에 typedefs.h 적응"- http://www.mingw.org/

  • 포트 Cygwin에서 GCC 자신에게 - 시작 그들이는 MinGW를 지원 같은 사이트에 따르면, 그것은 보인다 여기에 주변 매크로를 게시하십시오. – James

  • +0

    안녕하세요 제임스, 주석의 텍스트가 많이 서식을 지정할 수 없기 때문에 위에 붙여 넣었습니다. – Suman

    답변

    1

    .

    어느

    1. (또는 경우) 그들은 모든 Windows C 컴파일러를 지원하고 사용하는 방법을 프로젝트에서 알아보십시오. 이 typedefs.h에서 텍스트에 대한
    +0

    안녕하세요 Lou Franco, 저는 리눅스에 새로운 비결입니다. 몇 가지 링크가있는 항구로 나를 인도 해주십시오. 그래서 나는 시작할 수 있습니다. – Suman

    +0

    MINGW를 사용하여 빌드하는 것이 더 좋을 것입니다. 왜냐하면 더 많은 의존성이있을 수 있기 때문입니다.하지만 (1) GCC가 자체적으로 http : //gcc.gnu를 식별하기 위해 정의한 것을 찾으려고합니다. (3) 다른 플랫폼이하는 매크로를 정의하십시오 (MSDOS에서 복사를 시작합니다). - (4) "#elif defined (__ GNUC __) 테스트하고 더 많은 것을해야하는지 알아보십시오. –

    관련 문제