openssl1.1.1编译

下载源码

去官网下载源码
openssl官网
下载下来的代码进行解压,我这里下载的是1.1.1m,目录结构如下

结构介绍

openssl1.1.1编译_第1张图片

crypto里面是所有的算法
app是openssl命令行等的程序
ssl是安全套接字相关的代码
INSTALL是编译安装相关说明,比如安装在哪里,如果是交叉编译如何配置,读这个文档就可以了。
如果还要看其他平台相关的,看下面的NOTES.ANDROID,NOTES.WIN,NOTES.UNIX等等文件

最简单的编译,windows/linux

 Quick Start
 -----------

 If you want to just get on with it, do:

  on Unix (again, this includes Mac OS/X):

    $ ./config
    $ make
    $ make test
    $ make install

  on OpenVMS:

    $ @config
    $ mms
    $ mms test
    $ mms install

  on Windows (only pick one of the targets for configuration):

    $ perl Configure { VC-WIN32 | VC-WIN64A | VC-WIN64I | VC-CE }
    $ nmake
    $ nmake test
    $ nmake install

调试选项

要编译出可调试版本增加
–debug

编译android版本

编译android版本由于是交叉编译需要用Configure

  • 配置ndk目录 ANDROID_NDK_HOME=你的ndk目录
  • 选择一个目标机器的架构,比如android-arm64
  • ndk支持多个api级别,你可以选一个(默认是最高的),比如29,可以这样配置-D__ANDROID_API__=29
  • 导出工具链路径

目标机器的名字选项

android-arm, android-arm64, android-mips, android-mip64, android-x86
and android-x86_64

编译器使用clang的

	export ANDROID_NDK_HOME=/home/whoever/Android/android-sdk/ndk/20.0.5594570
	PATH=$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_HOME/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
	./Configure android-arm64 -D__ANDROID_API__=29
	make

编译器使用gcc的(ndk19及一下)

    export ANDROID_NDK_HOME=/some/where/android-ndk-10d
    PATH=$ANDROID_NDK_HOME/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin:$PATH
    ./Configure android-arm -D__ANDROID_API__=14
    make
    ```

你可能感兴趣的:(openssl,unix,linux,服务器)