BLOG main image
LoofBackER's Blog
Jun - Sik , Yang Blog

PSP programming

분류없음 2008.02.10 23:59 by LoofBackER

출처 : http://blog.naver.com/midgardhr?Redirect=Log&logNo=19261638
<참고자료>
스크랩한 psp 개발 방법
psp-programming.com
pspdev.org
PSP Development Forum


PSP 프로그래밍을 시작해보자.


먼저 이 문서는 http://wiki.ps2dev.org/ 을 기반으로 제작되었다는 점을 명시해둔다.

이 문서를 보고 필자가 따라한 것을 다시 요약한 것이다.

위 홈페이지의 Programming FAQ를 보면 영어 문서로 자세히 설명되어 있다.


PSP SDK는 현재 Unix 기반으로 나오고 있기 때문에

Windows를 쓰고 있다면 Cygwin을 설치하는 일부터 해야한다.

물론 윈도우용 개발 도구도 있는 것 같기는 하지만, 공개용 같지 않다.


Cygwin은 http://www.cygwin.com/ 에서 다운받을 수 있다.

여기서 다운받을 수 있는 cygwin은 전체 설치 파일이 아니고,

실행한 이후 스스로 다운받아 설치하는 버전이다.

기본적으로 기본 옵션대로 설치하지만, 기본 옵션에 없는 2가지를 반드시 설치해야 한다.


첫째로는 Devel을 skip하게 되어있는데 이것을 install로 바꿔주어야 한다.

바꾸는건 skip를 클릭하다보면 글자가 바뀌는데 install이 될 때까지 클릭하면 된다.

필자가 설치했을 때는 1번만 클릭하면 되었었다.


두번재로는 wget를 설치해야 한다. 이것도 Devel과 비슷하게 하면 되는데

install이 아니라 버전 번호가 뜨도록 해주면 된다.


이 두가지는 필수이고, Vim을 사용하기 원하는 사용자는

Editor에서 Vim을 비슷한 방식으로 설치해주면 된다.

Vim도 버전 번호가 뜬다.


그림과 함께 설명하면 좋겠으나, 현재 여건이 여의치 않은 관계로 나중에 추가하기로 한다.


이렇게 하고 기다리면 알아서 다운받고 설치한다.

설치가 다 되면 바탕화면의 cygwin을 한번 실행해보자.

프롬프트가 잘 뜬다면 된것이다. exit를 입력하고 엔터를 치면 자동으로 빠져나온다.


이 실행 과정은 한번 하는게 좋은데, 문제점을 확인하기 위해서도 그렇고,

cygwin은 처음 실행했을 때 home/(Username)의 폴더를 생성한다.

이 폴더에 주로 파일을 넣게 되므로 이후의 과정으로 넘어가기 전에 한번쯤 실행해주는게 좋다.


이제 toolchain을 설치하자.

toolchain은 psp 프로그래밍하는데 필요한 컴파일러와 sdk 등등이다.

http://www.oopo.net에서 다운받을 수 있는데 psp의 toolchain을 받으면 된다.

ps2용 toolchain도 있다.


다운 받은 파일을 home/(Username) 폴더에 넣자. Username은

아마 윈도우 사용자의 이름으로 되어있을 것이다.

여기에 파일을 복사하고 다음과 같이 입력한다.


$ tar xfvz psptoolchain-20050712.tgz

앞의 $는 입력하는 것이 아니라 프롬프트를 나타낸다.

tar부터 입력하면 된다.

이 명령어는 압축을 풀라는 명령어이고, 뒤의 xfvz는 옵션을 주는 부분인데,

지금은 몰라도 된다.

그리고 뒤의 20050712.tgz는 toolchain의 버전에 따라 다르므로,

파일 이름에 있는 그 날짜를 넣으면 된다.


다음으로는

$ cd psptoolchain 으로 들어가서 압축을 푼 폴더에 들어가고

$ chmod a+x ./toolchain.sh 을 실행한 후

$ ./toolchain.sh 를 실행하면 된다.


한줄씩 보면 첫줄은 폴더에 들어가라는 의미이고

두번째 줄은 권한 변경이라고 할 수 있는데, toolchain.sh라는 파일의 속성을

변경하는 것이라는 정도만 알면 되겠다.

마지막줄은 파일을 실행시키는 명령어로, 이 명령이 실행되면

일차적으로 할 일은 다 끝난 것이다.


./toolchain.sh는 여러가지 명령을 순차적으로 처리하는데

시간이 굉장히 오래 걸린다.

어디선가 누군가가 쓴 글에 따르면 3시간 정도 걸렸다고 한다.


이 스크립트 파일을 열어보면 wget을 통해 파일을 다운로드하는 부분이 있는데

이 다운로드가 상당히 느리고, 끊어지는 경우도 많다.

다만 파일이 이미 존재하면 그냥 넘어가는데

파일을 받는 도중 끊어져서 명령 수행이 종료될 경우

다시 실행하면 파일 다운로드가 완료된 것으로 간주, 그냥 다음으로 넘어가므로

뒤에서 문제가 생긴다.

따라서 Flashget과 같은 다운로드 전용 프로그램을 이용,

주소를 붙여 다운로드를 미리해서

폴더에 미리 넣어주면 좋다. 다운로드하는 파일은 4개밖에 없으므로

크게 번거롭지도 않다.


이 작업이 끝나면 환경변수를 설정해야한다.

먼저 어느 위치에 있든지간에 cd를 입력하면 자신의 홈 디렉토리로 이동한다.


$ vim .bashrc를 입력하면 환경변수를 설정하는 파일에 들어가게 된다.

(vim을 사용하지 않는다면 .bashrc파일을 cygwin의 home/(사용자이름) 폴더에서 열어서 수정한다.)


맨 마지막에 다음 세 줄을 추가한다.


export PSPDEV="/usr/local/pspdev"
export PSPSDK="$PSPDEV/psp/sdk"
export PATH="$PATH:$PSPDEV/bin:$PSPSDK/bin"

주로 PATH를 설정하는 것이므로 내용은 신경쓰지 않아도 된다.

:wq를 입력하면 저장하고 빠져나온다.

물론 메모장이나 워드패드를 이용해도 된다.


이제 exit를 입력해서 빠져나가고 다시 실행하자.

(bashrc의 변경사항을 적용시키기 위해서다.)


$ psp-gcc -v 를 입력하자.


Using built-in specs.
Target: psp
Configured with: ../configure --prefix=/usr/local/pspdev --target=psp --enable-languages=c,c++ --with-newlib --enable-cxx-flags=-G0
Thread model: single

gcc version 4.0.0

위와같은 메세지가 보이면 성공적으로 마쳐진 것이다.


다음 번에는 HelloWorld를 출력하는 간단한 어플리케이션을 작성해보도록 하자.


출처 : http://blog.naver.com/midgardhr?Redirect=Log&logNo=19261638

신고
1 ··· 11 12 13 14 15 16 17 18 19 ··· 107 

카테고리

분류 전체보기 (107)
::::::Dairy::::: (5)
:::::what?::::: (1)
:::::Computer::::: (5)
:::::Idea::::: (2)
:::::Want::::: (1)

달력

«   2017/10   »
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        

티스토리 툴바