기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

http://www.aesop.or.kr/Board_Community_Freeboard/126661 에 관련하여 이어서 질문드립니다.


#include <stdio.h>

int main()

{

printf("test\n");

return 0;

}


이라는 test.c파일을 크로스컴파일러로 컴파일하여 바이너리 파일 상태를 확인해봤는데요

1. arm-linux-g++

#arm-linux-g++ test.c

#file a.out

a.out: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.14, not stripped

보드에서 바이너리 실행하면 정상실행됩니다.


2. arm-none-linux-gnueabi-g++ test.c

#file a.out

a.out: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, not stripped

실행 잘됩니다.


3. arm-linux-gnueabihf-g++ test.c 

#file a.out

a.out: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.31, BuildID[sha1]=0x850f7396c5ed0992a52994af2a28c05cbb66fca2, not stripped

보드에서 실행안됨.



3번 컴파일러로 하면 보드에서 실행시키면 아래와 같이 나옵니다.

~ # ./a.out                                                                    
-sh: ./a.out: not found 



file 명령으로 바이너리 파일을 보면 다른 바이너리들과 다르게

'BuildID[sha1]=0x850f7396c5ed0992a52994af2a28c05cbb66fca2'

메시지가 추가되는데요. 이것이 좀 영향이 있는것 같은데;;

이런 문제 혹시 해결해보신 분이 계신지요? 조언좀 부탁드립니다.






추락천사

2014.09.11 18:29:38
*.117.45.3

컴파일러가 안맞는 경우입니다.

굳이 3번째 컴파일러를 사용해야 하는 이유라도 있으신지요??

왠만해선, 보드(or cpu) 밴더에서 적절한 컴파일러를 제공할텐데요...

List of Articles
번호 제목 글쓴이 날짜 조회 수

사용자 로그인