交叉編譯場(chǎng)景分析(arm-linux)(三)--編譯zlib
1. 基本信息:
軟件名稱
zlib
功能簡(jiǎn)述
zlib 一個(gè)壓縮解壓程序庫(kù)
下載地址
http://www.zlib.net/
軟件版本
zlib-1.2.3.tar.gz
依賴關(guān)系
默認(rèn)
前置條件
源文件位置:$(WORK_DIR)/zlib
2. 過(guò)程分析
下載的穩(wěn)定版本,configure已經(jīng)存在,直接進(jìn)行配置:
[root@linux zlib-1.2.3]# ./configure --host=$ARCH-linux --prefix=$ROOTFS_DIR/usr
出現(xiàn)了如下錯(cuò)誤:
usage:
configure [--shared] [--prefix=PREFIX] [--exec_prefix=EXPREFIX]
[--libdir=LIBDIR] [--includedir=INCLUDEDIR]
看來(lái)此configure非彼configure也,打開(kāi)一看,果然不是autoconf系列的,又是一個(gè)貌合神離的東東。OK,按它的用法說(shuō)明做吧,但問(wèn)題是如何指定交叉編譯器呢,按照慣例,設(shè)置環(huán)境變量CC試試看:
[root@linux zlib-1.2.3]# export CC=$ARCH-linux-gcc
[root@linux zlib-1.2.3]# ./configure -shared --prefix=$ROOTFS_DIR/usr
OK,配置成功,編譯:
[root@linux zlib-1.2.3]# make && make install
OK,編譯成功。
3. 構(gòu)建處方
l zlib.mk
ZLIB_DIR="zlib-1.2.3"
all: clean config build
config:
@cd $(ZLIB_DIR) &&
export CC=$$ARCH-linux-gcc &&
./configure --prefix=$$ROOTFS_DIR/usr/local --shared &&
echo "config done"
build:
@cd $(ZLIB_DIR) &&
make && make install &&
echo "build done"
clean:
@cd $(ZLIB_DIR) &&
if [ -e Makefile ]; then make distclean; fi &&
echo "clean done"
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
linux相關(guān)文章:linux教程
評(píng)論