openssl编译

Posted 朝闻道

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了openssl编译相关的知识,希望对你有一定的参考价值。

官网:http://www.openssl.org/

得到源码:

git clone  https://github.com/openssl/openssl


一、用vc编译器编译:

1、下载nasm:

http://www.nasm.us/

2、下载perl:

http://www.perl.org/

3、配置:

运行 Configure 。

perl Configure VC-WIN32 --prefix=c:\openssl

如不成功会有明显提示。

4、创建Makefile文件。

>ms/do_ms

推荐使用这种方式,另外两种方式如果使用也必须保证本机有编译器才能使用。

:ms/do_masm(默认vc自带的编译器;也也以自己下载安装;现在包括在sdk中)

:ms/do_nasm(需要自己下载)

5、配置VC环境变量。

>cd C:/Program Files/Microsoft Visual Studio/VC98/Bin

  > vcvars32.bat

6、编译动态链接库。

>cd C:/openssl-0.9.8k

>nmake -f ms/ntdll.mak

编译静态链接库:

nmake -f ms/nt.mak

 
 

二、ubuntu下编译android:
配置:
 ./Configure --cross-compile-prefix=/home/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/arm-linux-androideabi-   android-armv7   --sysroot=/home/android-ndk-r9c/platforms/android-19/arch-arm
--cross-compile-prefix:编译器前缀
android-armv7:生成的平台
--sysroot:gcc的参数.
--prefix:库安装位置
--openssldir:证书、帮助等安装位置

编译:
make



三、mingw下编译:
./Configure  mingw

mingw:编译目标

四、linux下用mingw交叉编译:
perl Configure  --prefix=${RABBITIM_BUILD_PREFIX} \
            --openssldir=${RABBITIM_BUILD_PREFIX} \
            --cross-compile-prefix=i686-w64-mingw32- \
            shared mingw

http://blog.csdn.net/kl222/article/details/41787529

以上是关于openssl编译的主要内容,如果未能解决你的问题,请参考以下文章

Ruby 和“您必须使用 OpenSSL 支持重新编译 Ruby 或更改 Gemfile 中的源代码”

VS2010 编译 openssl 源代码(输出 libeay32 and ssleay32 静态库和动态库)

如何使用自定义 OpenSSL 编译 Python 3.4?

使用OpenSSL进行Base64编码和解码

是否可以动态编译和执行 C# 代码片段?

用 Python3.10 和 OpenSSL-1.1 编译 C:未定义符号“OPENSSL_sk_num”