2011-03-15 6 views
4

어셈블리 언어로 실행 파일을 만드는 방법을 누군가에게 말해 줄 수 있습니까? 내 환경은 우분투 + 이맥스 + GCC 이 목적을 학습, 나는 약간의 C 코드 (에서는 hello.c) 및 조립으로 변환 (hello.s)어셈블리 언어로 실행 파일을 만드는 방법 0129 (영문)

을 쓴 나는 작성된 어셈블리에서 실행 파일을 만들고 싶어 파일.

나는

M-x compile 

as hello.s 

이 실행 파일

를 만들기 위해 C 코드에서 어셈블리를 만들기 위해

M-x compile 

gcc hello.c -S 

을 시도하지만 파일의 a.out있다 그것은 '외설 실행할 수 있습니다.

그래서

as hello.s -o aaa 

을 시도했지만 파일 "AAA"는 as의 출력은 오브젝트 파일입니다

+1

aaa "chmod + x aaa"의 사용 권한을 변경하십시오. – Zimbabao

+0

나는 허가의 문제라고 생각하지 않습니다. 오브젝트 코드입니다. –

답변

3

실행되지 않습니다. 실행 가능하게 만들려면 ld으로 링크해야하지만, 소스가 gcc에서 생성 된 경우 최소한 다른 오브젝트 파일뿐만 아니라 libc도 최소한 포함하게되는 모든 오브젝트를 링크해야합니다.

+4

+1하지만'gcc hello.s -o aaa'를 사용하는 것이 더 쉽습니다. –

+0

정말 고마워요! gcc hello.s -o aaa. 그게 내가 원하는거야! –

관련 문제