티스토리 뷰

반응형


  • 개인공부 후 자료를 남기기 위한 목적으로 포스팅합니다. 내용 상에 오류가 있을 수 있습니다.


0x04. 리눅스에 binutils 설치

 Nachos는 내부적으로 MIPS 아키텍쳐를 가상화하므로 MIPS 명령어로 구성된 바이너리 파일이 실행 가능하게 된다. 하지만 우리는 인텔 x86 프로세서를 사용하기 때문에 현재 우리가 사용하는 프로세서에서 MIPS 명령어로 구성된 바이너리를 만들어내는 컴파일러를 만들어야 한다. 이렇게 host machine과 target machine이 다른 컴파일러를 크로스 컴파일러라고 하며, 여기에서는 Redhat9에 binutils와 GCC를 설치하여 MIPS Instruction을 만들어내는 컴파일러로 구성할 것이다.

 binutils는 GNU의 웹 FTP(http://ftp.gnu.org/gnu/binutils/) 사이트를 통해서 최신버전이 아닌 구버전 2.11.2으로 binutils-2.11.2.tar.gz을 다운받아서 사용하였다.

< 그림 4.01 FTP 사이트를 통해 다운받은 bintuils 설치파일을 rz 명령어로 업로드 >


 다운받은 binutils-2.11.2.tar.gz 파일을 tar 명령어를 통해 압축을 해제한다

# tar -xzvf binutils-2.11.2.tar.gz

< 그림 4.02 binutils-2.11.2.tar.gz을 tar -xzvf 명령어로 압축해제 >


 압축을 해제한 디렉토리로 가면 make 명령어를 통해 컴파일이 가능한 파일구조로 이루어져 있다. binutils를 컴파일 하기 전에 configure 파일을 통해 일부 옵션을 수정해 주어야 한다.

# ./configure --prefix=/root/local --target=decstation-rltrix

< 그림 4.03 binutils 컴파일을 위한 configure 설정 >


 prefix 옵션을 통해 나중 make install 명령어 실행 시 설치될 위치를 변경할 수 있으며, target 옵션을 통해 MIPS Architecture 로 Cross Compile 해줄 것을 명시 해줄 수 있다.

 configure 설정을 무사히 마쳤다면 make 명령어를 통해 설치 파일을 컴파일한다.

# make

<그림 4.04 binutils 설치 파일 컴파일 >


 make 명령어도 무사히 완료 되었다면 make install 명령어를 통해 실제 디렉토리로 binutils를 인스톨한다.

# make install

<그림 4.05 make install 명령어로 binutils 설치 >




반응형
프로필사진

Yowu (Yu Yongwoo)

흔한 Node.js/Java 백엔드 개발자입니다
Ubuntu와 MacOS 데스크탑 개발 환경을 선호합니다
최근에는 vscode와 IntelliJ를 사용하고 있습니다
vscode에는 neovim, IntelliJ는 ideaVim
개발용 키보드는 역시 HHKB Pro 2 무각입니다
락 밴드에서 드럼을 쳤습니다

최근에 올라온 글
최근에 달린 댓글
«   2024/03   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함
Total
Today
Yesterday