임베디드 리눅스 실전 가이드 #
--
김도집 2005-08-24 11:41:25
본 내용에 대한 것은 자유롭게 배포 가능하다. 단, 출처는 명시해야 하며, 임의 수정 배포는 허용하지 않는다.
zlib은 널리 사용되는 압축 라이브러리이다.
zlib 1.2.2 버전 이하에서는 보안 문제가 있으므로 반드시 최신 버전을 사용하기 권한다.
zlib는 다음의 사이트에서 구할 수 있다:
http://www.zlib.net
다음은 zlibc 1.2.3의 빌드 과정이다.
- ./configure 또는 ./configure --shared 를 실행한다.
--shared 옵션은 zlib 라이브러리를 동적으로 만들라는 의미이다.
./configure --shared --prefix=/usr/local/arm/arm-uclibc-3.3.5
- Makefile 을 다음과 같이 수정한다:
CROSS=arm-linux-
CC=$(CROSS)gcc
LDSHARD=$(CROSS)gcc -shared -Wl,-soname,libz.so.1
CPP=$(CROSS)gcc -E
AR=$(CROSS)ar rc
RANLIB=$(CROSS)ranlib
- make install 를 실행하여 빌드된 것을 설치한다.
커널 2.6에서는 외부 모듈의 빌드를 커널 소스 내의 빌드 시스템을 이용한다. 예를 들어 foobar.ko 라는 커널 모듈을 만든다고 하면 다음과 같이 Makefile 파일을 만든다.
{{
ifneq ($(KERNELRELEASE),)
#call from kernel build system
foobar-objs := foo_1.o foo_2.o
obj-m := foobar.o
else
KERNELDIR ?= /YOUR/KERNEL/SOURCE/PATH
PWD := $(shell pwd)
modules:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
endif
clean:
rm -rf *.o *~ core .depend .*.cmd .*.o.d *.ko *.mod.c .tmp_versions
}}}