Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1638637
  • 博文数量: 311
  • 博客积分: 7778
  • 博客等级: 少将
  • 技术积分: 4186
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-09 19:59
个人简介

蓝点工坊(http://www.bluedrum.cn) 创始人,App和嵌入式产品开发。同时也做相应培训和外包工作。 详细介绍 http://pan.baidu.com/s/1y2g88

文章存档

2012年(3)

2011年(115)

2010年(170)

2009年(23)

分类: 嵌入式

2011-06-22 14:11:31

Andrew Huang 转载注清明作者及网址

版本: openssl 1.0.0b 

tar xvf openssl-1.0.0b.tar.gz
cd openssl-1.0.0b

一.推荐的编译方法

注意这里不是常用的configure,而是一个脚本Config

     AR="arm-linux-ar" RANLIB=arm-linux-ranlib  CC=arm-linux-gcc /usr/bin/perl ./Configure shared linux-armv4 --prefix="$PWD/../../output/arm-linux"

   
  •    AR/RANDLIB/C环境变量 是确保Makefile中使用arm-linux 系列工具
  •    /usr/bin/perl ./Configure  表示执行perl脚本 Configure,注意第一个字母是大写
  •    shared 表示要编译动态库,
  •  linux-armv4 表示生成目标平台名称,我用的s3c6410的平台,这个应该能使用ARMv4的指令.
  • --prefix 指明安装目录.
make 
make install


二,自定义平台的方法(不推荐)
 网上有直接自定义编译器的配置脚本,缺省只有能编译静态库,动态库需要手工修改Makefile

2.1 生成静态库
AR="arm-linux-ar" RANLIB=arm-linux-ranlib  CC=arm-linux-gcc ./config  shared os/compiler:arm-linux-gcc --prefix="$PWD/../../output/arm-linux"

  这里os/compiler: 表示采用自定义平台,指定编译器

2.2 生成动态库的
  在上一步的基础上修改Makefile.

 修改SHLIB_EXT的值为 .so.$(SHLIB_MAJOR).$(SHLIB_MINOR)
 修改SHLIB_TARGET的值为 linux-shared
 在build_all 后面依赖列表里增加 build-shared

 make会同时看到静态和动态库,但是好象无法正常安装动态库到发布目录,可以手工拷贝或者继续调整makefile


make 

make install



三,应用程序使用openssl
 
网应用程序使用openssl时,需要手工链接openssl两个库 libssl和libcrypto.在链接时使用 -lssl -lcrypto ,注意两个库的链接顺序不能对调






阅读(3978) | 评论(0) | 转发(2) |
给主人留下些什么吧!~~