gcc cpu architecture를 선택하여 컴팔하는 옵션이 있나요?
글쓴이: puaxx / 작성시간: 목, 2005/09/22 - 1:17오후
gcc cpu architecture를 선택하여 컴팔하는 옵션이 있나요?
전에 64비트컴퓨터에서 컴팔한 프로그램이 32비트에서 돌아갈까 라는 문제로 질문을 올렸엇는데요..
왠지 문제가 생길것 같아서...
그냥 32비트컴퓨터에서 컴팔하면 될꺼 아냐 라고 하시겠지만 --;;현제 저에게 남는 32비트 컴이 없습니다.--;;..
64비트 환경에서 32비트환경에서 사용할수 있는 프로그램을 컴팔하고 싶습니다.
Forums:


* 해결: 크로스컴파일러를 설치한다.소스 : test.c목적
* 해결: 크로스컴파일러를 설치한다.
소스 : test.c
목적 : a.out
컴파일러 : gcc 3.3.2 이상만 된다는 소문이... ㅎㅎ
개발장비 : 64bits/32bits => 컴파일러 수준에서 크로스 컴파일하므로....
타켓 64비트 : gcc -m64 test.c
타켓 32비트 : gcc -m32 test.c
ld를 사용하는 경우
--------------------------------
* 주의 : 개발장비가 32비트이고 64비트 타겟을 만들때, gcc 버전이 -m64가 구현된 버전으로 구해서 해야 한다는...
웅컁 ld에서 걸리네요..
--;;아웅...컴팔은 잘된느데 ld에서 에러 쫙 뱉어네네요...킁..
아..에러가 아니라 warnning 이군요...흠...근데 좀 깨림직 하네요 쩝..
ld 옵션에 -m elf_i386을 넣어주세요.* 참고: 그외 목
ld 옵션에 -m elf_i386을 넣어주세요.
* 참고: 그외 목적 하드웨어별로, elf_i386, elf_s390, elf32_sparc , elf32ppclinux
elf_x86_64, elf64ppc, elf64_s390, elf64_sparc등을 타켓에 맞춰서 잘 넣어주셔야 합니다. 당연하게도, 컴파일러 환경이(버전, 지원여부) 이를 좌우하게 되겠습니다.
* 성능을 고려한다면 : 별개 문제겠지만, 이를 위한다면 역시 native compiler(gcc말고 cpu 벤더가 제공하는 컴파일러)가 가장 빠르며(64비트쓰는 보람이 나온다는...), 에뮬레이션(64에서 32 에뮬레이션등)등은 속도가 잘 .. 안나옵니다. gcc의 가장 강점은 포터빌리티라고 봐야겠지요?
흠...감사합니다.
참고 하겠습니다.