[t:/]$ 지식_

spidermonkey cross-build / 스파이더몽키란? 크로스 빌드하기

2009/02/06

SpiderMonkey 란?

http://www.mozilla.org/js/spidermonkey/

저기에 설명 다 있음 -_-;
귀찮은 분들께 요약.

C에서 JavaScript를 돌리는 엔진임. 중간에 콜백 함수만 연결하면 여기저기 응용가능.

마찬가지로 자바 버츄얼 머신에서 돌아가는 놈은 rhino 라고 하는 것 같다. 자세한 내용은 검색.

http://search.naver.com/search.naver?sm=tab_hty&where=nexearch&query=rhino+javascript

adobe 에서 자기네 리소스를 기증하여 돌아가고 있는 오픈소스 프로젝이 tamarin. 역시 자세히는 조사 안 해봤기에 그만..

http://www.mozilla.org/projects/tamarin/

아마 스파이더몽키는 초경량 시스템용으로 버전 끊기고 이 놈으로 다 합쳐질 것 같음. 정확한 내용은 아니지만 어도비 포토샵도 내부적으로는 거의 액션스크립(=자바스크립)으로 돌아간다는 이야기를 들은 적이 있음.

spidermoney : 거미원숭이
tamarin : 뭐 얘도 꼬리 긴 동물임

ARM용으로 크로스 빌드하기

스크래치박스 상에서 작업

nspr-4.7 다운로드.
ftp://ftp.mozilla.org/pub/mozilla.org/nspr

./configure 하면 에러 많이 남. 부족한 패키지 올 설치.

http://ftp.gnome.org/mirror/gnome.org/sources/linc/1.1
http://ftp.gnome.org/pub/gnome/sources/libIDL

등...

에러나는 패키지는 http://www.wikipedia.org/ 에서 검색.
검색해도 안 나오면 구글에서 패키지 명 src 를 검색

예:) http://www.google.co.kr/search?complete=1&hl=ko&newwindow=1&q=ORBit2.0+src&lr=&aq=f

주로 ./configure -> make -> make install 하면 빌드/설치 완료 (스크래치 박스 짱!)

에러나면 PKG_CONFIG_PATH 변수를 점검하여 파일들이 제 위치에 있는지 확인.

다시한번 시도.

./ configure --without-x --without-mozilla

make

DirectFB를 쓸 것이며 JS 엔진만 쓰고 모질라는 안 쓸 것이므로 옵션을 저리 줬음. 에러가 나지만 빌드는 다 된 상태이다.

rpath 관련 문제인데 수동으로 해결하자. 빌드 후에 생성되어 있는 dist/include/nspr 을 /usr/local/include/nspr 로 이동

이때 전부 심볼릭 링크로 되어 있으므로 원본을 제대로 복사한다. 다음 파일도 복사한다.

cp pr/include/nspr/md/_linux.h /usr/local/prcpucfg.h

스파이더몽키 다운로드.
ftp://ftp.mozilla.org/pub/mozilla.org/js

js-1.7.0.tar.gz 를 받는다. 빌드 문서를 보면 참 심플하다 -_-; 크로스 빌드가 제대로 될 리가 없다. 이미 nspr 작업 잘 되었으므로

config.mk 에서 -g 옵션을 삭제하면 됨.

make -f Makefile.ref

Linux_All_DBG.OBJ 에 들어가서 js 를 실행되면 성공.

이상. -_-;

뭔가 중간 작업이 많이 빠졌는데 혹시 참조하는 분 있으면 리플 주세요.





공유하기













[t:/] is not "technology - root". dawnsea, rss