2013-07-12 1 views
0

arm-elf-gcc 및 arm-rtems-gcc를 사용하여 vsoc_beta에 대한 일부 테스트를 실행하려고합니다. 그러나 두 컴파일러는 나에게 같은 오류를 준 :_app_main에 대한 정의되지 않은 참조

/home/student/vsoc-beta/apps/libgomp/root.o: In function `main': 
/home/student/vsoc-beta/apps/libgomp/libgomp.c:24: multiple definition of `main' 
app_obj.o:/home/student/vsoc-beta/apps/rotate/rot.c:103: first defined here 
/home/student/vsoc-beta/apps/libgomp/root.o: In function `main': 
root.c:(.text+0x219c): undefined reference to `_app_main' 
root.c:(.text+0x2298): undefined reference to `_app_main' 
make: *** [o-optimize/app.exe] Error 1 

이 테스트는 libgomp을 사용하고 libgomp.c에 선 거기됩니다

extern int _app_main(int argc, char **argv, char **envp); 

메인는 다음과 같이 정의된다 :

int main(int argc, char **argv, char **envp) 

테스트 파일에는 또 다른 주요 기능이 있습니다.

int main(int argc, char **argv) 

무엇이 문제 일 수 있습니까?

답변

0

첫 번째 오류는 "기본 다중 정의"이므로 먼저 응용 프로그램의 진입 점이 2 가지 주요 기능 중 어느 것을 결정해야합니다.

응용 프로그램은 하나의 진입 점 또는 주 기능으로 만 사용됩니다.