[cross compile] segmentation fault
글쓴이: ddalgi120 / 작성시간: 화, 2009/04/21 - 10:36오전
arm-none-eabi-gcc 로 간단한 Hello.c 파일을 크로스컴파일 해서,
타겟보드에 옮긴 후 실행하면,
segmentation fault가 납니다.
segmentation fault는 메모리를 잘못 참조했을 때 나는 것 같은데,
소스코드가
#include
int main(void) {
printf("Hello, C\n");
return 0;
}
이것뿐인데도 왜 에러가 나는지 잘 모르겠습니다.
크로스 컴파일러가 버전에 맞지 않는건가요..??
파일을 잘못 다운받은건지..ㅠ
gumstix omap3503으로 작업하는 중입니다.
Forums:
아마...
arm-none-eabi-gcc 컴파일러가 참조한 c standard library가 정상적인지 확인해 봐야 할 듯 하네요...
_________________________________________________________
nineye's blog
앗 고맙습니다 +_+
그런데 그걸 어떻게 확인하는지 설명해주실 수 있으십니까..? ^^;;
그냥 host pc에 arm-2007q1-21-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 이걸 압출 풀어놓고,
path 설정만 해준 게 다인데,
혹시 타겟보드에도 어떤 걸 설치하거나 설정하는 것이 있나요?
초짜를 어여삐 봐주십시오.......... ^^;;
저도 아는 건 없지만...
일단 gcc 옵션에 보면 디폴트로 include하거나 linking하는 standard library에 대해 알 수 있거나,
다른 standard library를 지정해 주는 옵션들이 있습니다(어떤 옵션이었는지는 기억이 잘...).
이걸 이용해서 압축 파일내에 있는 standard library를 정확히 이용하고 있는지 체크해봐야 할 것 같고,
정확히 참조하고 있는데도 오류가 난다면, target board에서 stdout이 어떻게 처리되고 있는 지 확인해
봐야 할 것 같네요... printf에서 문제가 생기는 거라면...
단순한 파일 권한 문제라면 권한이 없다는 오류를 발생시키지, 죽지는 않을 것 같고...
target board를 직접 확인 해 보지 않는 이상 어떻게 답변 드리기가 어렵네요... ^^;;
_________________________________________________________
nineye's blog
댓글 달기