Zlib移植

来自SylixOS-wiki
(版本间的差异)
跳转至: 导航, 搜索
(下载 zlib)
(修改 Makefile)
第41行: 第41行:
  
 
:4:
 
:4:
CC=arm-none-eabi-gcc
 
 
:5:
 
 
  CFLAG = $(SYLIXOS_CFLAGS) $(SYLIXOS_EXLIBS) -shared ......
 
  CFLAG = $(SYLIXOS_CFLAGS) $(SYLIXOS_EXLIBS) -shared ......
 
  SFLAG = $(SYLIXOS_CFLAGS) ......  
 
  SFLAG = $(SYLIXOS_CFLAGS) ......  
  
:6:
+
:5:
LDSHARED=arm-none-eabi-gcc ......
+
CPP=arm-none-eabi-gcc .......
+
AR=arm-none-eabi-ar
+
RANLIB=arm-none-eabi-ranlib
+
 
+
:7:
+
 
  LDSHAREDLIBC=-shared $(SYLIXOS_EXLIBS)
 
  LDSHAREDLIBC=-shared $(SYLIXOS_EXLIBS)
  

2015年5月15日 (五) 10:58的版本

目录

下载 zlib

在 linux 环境下操作。
进入 sylixos 工作空间:
cd /home/user/sylixos_workspace
下载 zlib:
zlib 的主页为 http://www.zlib.net
解压 zlib:
tar zxvf zlib-1.2.8.tar.gz
修改 zlib 目录名,避免版本升级带来不必要的麻烦:
mv zlib-1.2.8 zlib
进入 zlib 目录:
cd zlib

configure

配置:
./configure --prefix=/opt/arm-sylixos-zlib

修改 Makefile

1:(编译好的 SylixOS 与 cextern 目录根据实际情况设置)
# SylixOS Base PATH
SYLIXOS_BASE_PATH=/home/user/sylixos_workspace/sylixos-base
2:
# SylixOS includes
INCDIR  = $(SYLIXOS_BASE_PATH)/libsylixos/SylixOS
INCDIR += $(SYLIXOS_BASE_PATH)/libsylixos/SylixOS/include
INCDIR += $(SYLIXOS_BASE_PATH)/libsylixos/SylixOS/include/inet
SHLDIR  = $(SYLIXOS_BASE_PATH)/libcextern/Debug
SHLDIR += $(SYLIXOS_BASE_PATH)/libcextern/Debug
3:
# SylixOS compile and link options
SYLIXOS_CFLAGS=-DSYLIXOS -DSYLIXOS_LIB $(addprefix -I,$(INCDIR)) -mcpu=arm920t -fmessage-length=0 -fno-short-enums
SYLIXOS_EXLIBS=-nostdlib $(addprefix -L,$(SHLDIR)) -lcextern -lvpmpdm -lm -lgcc
4:
CFLAG = $(SYLIXOS_CFLAGS) $(SYLIXOS_EXLIBS) -shared ......
SFLAG = $(SYLIXOS_CFLAGS) ...... 
5:
LDSHAREDLIBC=-shared $(SYLIXOS_EXLIBS)

编译

1:
make
make install
2:
在 SylixOS 主机 /lib 中创建 zlib 文件夹, 然后将 make install 的结果拷贝到此处.
3:
创建好相应的符号链接
cd /lib/zlib/lib
ln -s libz.so.1 libz.so
ln -s libz.so.1.2.8 libz.so
4:
修改环境变量
$LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib/zlib/lib
varsave
个人工具
名字空间

变种
操作
导航
工具