openssl静态编译和动态编译

1、静态编译

./Configure linux-elf-arm -DB_ENDIAN linux:'armeb-linux-gcc -mbig-endian' --prefix=$(pwd)/OpenSSL

a openssl-0.9.8d/crypto/bio/bss_file.c中以下代码注释掉

//#ifndef _FILE_OFFSET_BITS

//#define _FILE_OFFSET_BITS 64

//#endif

#endif

       b 报错没有timeb.h时,在报错的.c文件中#undef TIMEB

c 去掉openssl顶层Makefile中“build_all:”后面的 build_app build_test (我们要的只是两个静态库libcrypto.alibssl.a),并去掉”DIRS=”后面的apptests

       make && make install

 

2、动态库

1.config:

   #config no-asm --prefix=../OpenSSL

2.改Makefile

   1) CC= gcc 改成 CC = armeb-linux-gcc;

   2) 删除 CFLAG= 中的 “-march=pentium”;

   3) AR=ar $(ARFLAGS) r 改为 AR=armeb-linux-ar $(ARFLAGS) r;

   4) ARD=ar $(ARFLAGS) d 改为 ARD=armeb-linux-ar $(ARFLAGS) d;

   5)RANLIB= /usr/bin/ranlib 改为 RANLIB= armeb-linux-ranlib;

3.编译

   #make

   #make install

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章