블로그 이미지

야메블로그

모든 것을 Ya-mae로 by Jungsub K.


Make: Electronics

 

이 책 한글 번역판이 Insight에서 나왔더군요.
오~ 보고 싶은 책이었는데. ㅋㅋ
한글판 제목은 "짜릿짜릿 전자회로 DIY" 유치 돋네 ㅋㅋ
그런데 필요한 부품이 KIT 형태로 팔기는 하는데 한국에는 안팔드라구요.
http://www.makershed.com/ 에서 그냥 살까 했는데 비싸기도 비싸고 (1,2 합쳐서 배송료까지 대략 30만원 안팍) 더군다나 평도 안좋은 듯 싶고.

그래서 그냥 http://www.devicemart.co.kr/ , http://www.eleparts.co.kr/ 같은데서 다 따로 사기로 했습니다.

Maker Shed에서 긁어 온 부품 리스트 (Google Docs)

유후~!

Top

OS X 에서 Crosstool-ng 빌드하기

간단하게 메모만 합니다.

OS X에서는 Crosstool-ng 가 정상적으로 컴파일되지 않습니다. (1.15.2 버전 기준)
sed, binutils, libtool을 별도로(GNU버전) 설치하고, configure 스크립트와 Makefile을 수정해줘야 합니다.

1. 필요한 패키지 설치.(MacPorts 이용)

$ sudo port install gsed binutils libtool

2. Crosstool-ng 다운로드 및 압축해제

이 글을 작성하는 시점에선 1.15.2가 가장 최신 버전입니다.

$ wget http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.15.2.tar.bz2
$ tar xjvf crosstool-ng-1.15.2.tar.bz2
$ cd crosstool-ng-1.15.2

3. configure.ac 수정.

configure 스크립트는 configure.ac 파일을 수정하고 autoconf로 재생성합니다.

File: configure.ac (1.15.2 버전 기준 125번째 줄 부터)

ACX_PATH_TOOL_REQ([OBJCOPY], [objcopy])
ACX_PATH_TOOL_REQ([OBJDUMP], [objdump])
ACX_PATH_TOOL_REQ([READELF], [readelf])

굵은 글씨로 표시한 부분을 아래와 같이 수정해 줍니다.

ACX_PATH_TOOL_REQ([OBJCOPY], [objcopy gobjcopy])
ACX_PATH_TOOL_REQ([OBJDUMP], [objdump gobjdump])
ACX_PATH_TOOL_REQ([READELF], [readelf greadelf])

그리고 bootstrap 스크립트를 실행새 configure 스크립트를 재생성합니다.
bootstrap 스크립트는 autoconf를 실행하는 스크립트입니다.

./bootstrap

4. configure 스크립트 실행

/PATH/TO/INSTALL 은 설치할 디렉토리.

$ ./configure --prefix=/PATH/TO/INSTALL --with-libtool=`which glibtool` --with-libtoolize=`which glibtoolize`

5. Makefile 수정

OS X에 기본으로 설치된 /usr/bin/install 프로그램은 -D 옵션을 지원하지 않습니다.
때문에 -D 옵션을 삭제하고 mkdir -p 명령을 별도로 추가해줍니다.

File: Makefile (1.15.2버전 기준 343번째 줄부터)

KCONFIG_FILES := conf mconf nconf kconfig.mk
install-lib-kconfig: $(DESTDIR)$(libdir) install-lib-main
@echo "  INST    'kconfig/'"
@for f in $(KCONFIG_FILES); do                                      \
   install -D "kconfig/$${f}" "$(DESTDIR)$(libdir)/kconfig/$${f}"; \
done

위의 붉은 색 -D를 삭제하고 mkdir 명령을 추가해 줍니다.

KCONFIG_FILES := conf mconf nconf kconfig.mk
install-lib-kconfig: $(DESTDIR)$(libdir) install-lib-main
@echo "  INST    'kconfig/'"
@mkdir -p "$(DESTDIR)$(libdir)/kconfig"
@for f in $(KCONFIG_FILES); do                                      \
    install "kconfig/$${f}" "$(DESTDIR)$(libdir)/kconfig/$${f}"; \
 done

6. 빌드하고 설치 완료.

$ make KBUILD_NO_NLS=1
$ sudo make install

KBUILD_NO_NLS=1 옵션은 http://www.crosstool-ng.org/#macos_x 참조.

Top

야메 블로그.

얼마나 열심히 포스팅 할 지는 모르겠지만,
작업하다 개발한 것, 공부하다 알아낸것, 기타 등등 잡다구리...

야메에 대한 모든 것.

Top

prev 1 next