精华内容
下载资源
问答
  • Windows下,openssl1.1.1编译的libcrypto.lib和libssl.lib各类lib合集,编译生成bin、include、lib等各类文件夹
  • 有librtmp源码,以及需要的zlib和openssl的源码, 各个库的编译方法以及用到的工具,还有在vs2017编译好的librtmp的静态库与动态库可以直接使用
  • openssl vs2015编译

    2019-04-03 14:10:18
    1. 编译环境win10+vs2015专业版 2. ActivePerl工具,官网下载链接:http://www.activestate.com/activeperl/downloads 3. openssl源码,下载链接:https://www.openssl.org/source/,选择2016-May-03 13:57:13 ...

    工具:

    1. 编译环境win10+vs2015专业版

    2. ActivePerl工具,官网下载链接:http://www.activestate.com/activeperl/downloads

    3. openssl源码,下载链接:https://www.openssl.org/source/选择2016-May-03 13:57:13 openssl-1.0.1t.tar.gz这个版本,之所以没有选择1.1.0,发觉两个版本差异较大,ms文件夹下缺少很多文件,没办法按照此方法编译。

     

    步骤:

    1. 安装ActivePerl, 并添加环境变量(可以默认勾选,或者手动添加,如path=d:\perl\bin)。

    2. 解压openssl。

    3. 点击 windows 开始->所有应用->vs2015->开发者命令提示(Developer Command Prompt for 2015)。

    4. CD到解压后的openssl的根目录。

    5. 执行命令:perl Configure debug-VC-WIN32(或者VC-WIN64A,取决于编译库类型,可以用–prefix=路径指定生成路径).
    6. ms\do_ms.bat(创建makefile文件,64位需要使用ms\do_win64a.bat)

    7. 执行nmake -f ms\ntdll.mak(编译动态库)。

    8. 执行nmake -f ms\ntdll.mak test查看库是否有问题。

    9. 执行nmake -f ms\ntdll.mak install 。

     

    TIPs:

    编译动态库: 
    nmake -f ms\ntdll.mak 
    编译静态库: 
    nmake -f ms\nt.mak 
    测试动态库: 
    nmake -f ms\ntdll.mak test 
    测试静态库: 
    nmake -f ms\nt.mak test 
    安装动态库: 
    nmake -f ms\ntdll.mak install 
    安装静态库: 
    nmake -f ms\nt.mak install 
    清除上次动态库的编译,以便重新编译: 
    nmake -f ms\ntdll.mak clean 
    清除上次静态库的编译,以便重新编译: 
    nmake -f ms\nt.mak clean

     

    • [编译类型]可以选择以下:
    参数含义
    debug-VC-WIN32编译32位debug版本
    VC-WIN32编译32位release版本
    debug-VC-WIN64A编译64位debug版本
    VC-WIN64A编译64位release版本
    • [输出目录]理论任何地方都可以。自己确定好就行

      • 3)配置模式:

        1. 【编译32位openssl】 
          命令如下:

          ms\do_ms.bat
          • 1

          感谢CSDN网友:WeiXin_zjmgly指出,如果之前编译使用了no-asm参数,则需要修改命令为:

          ms\do_nasm
          • 1

          否则会在编译引用了该openssl库的工程中出现”error LNK2001error LNK2019 无法解析的外部符号”这个错误。(该解决方法由 WeiXin_zjmgly 提供)

        2. 【编译64位openssl】 
          命令如下: 
          ms\do_win64a.bat
          • 1

        执行这一步之后,在ms目录下会生成nt.mak和ntdll.mak两个编译配置文件 
        nt.mak 用于生成静态lib库 
        ntdll.mak 用于生成动态dll库

      4、编译【编译静态库、动态库有区别】

      • 【编译openssl静态链接库】 
        命令如下:
      nmake -f ms\nt.mak
      nmake -f ms\nt.mak test
      nmake -f ms\nt.mak install
      • 【编译openssl动态链接库】 
        命令如下:
      nmake -f ms\ntdll.mak
      nmake -f ms\ntdll.mak test
      nmake -f ms\ntdll.mak install
      • 执行test命令可以测试编译好的库,测试成功了就可以运行install命令,运行完之后才会在输出目录中找到输出的编译好的库和加入工程时必要的include文件。 
        需要注意的地方:

      1)设置编译类型的时候千万别忘记no-asm参数,关闭汇编模式,否则会出现类似如下错误:

      Assembling: tmp32\sha1-586.asm
      tmp32\sha1-586.asm(1427) : error A2070: invalid instruction operands
      tmp32\sha1-586.asm(1571) : error A2070: invalid instruction operands
      NMAKE : fatal error U1077: 'ml' : return code '0x1'
      Stop.

      2)设置VC编译环境的时候,注意有32位和64位的区别,网络上大多数是因为没有注意这个导致编译失败。

      最后附上编译所需的所有命令(一个例子):

      openssl目录:c:\openssl-1.0.2j\ 
      以编译64位release版本的dll为例子:

      cd C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
      vcvars32.bat
      perl Configure VC-WIN64A no-asm --prefix="c:\openssl-1.0.2j\build-vc14-debug-win64-dll"
      ms\do_win64a.bat
      nmake -f ms\ntdll.mak
      nmake -f ms\ntdll.mak test
      nmake -f ms\ntdll.mak install
      nmake -f ms\ntdll.mak clean
    展开全文
  • openssl vs2015编译静态库

    千次阅读 2017-11-11 10:16:31
    去下载openssl-1.0.2m后,按如下流程编译,会报错1. 安装ActivePerl, 并添加环境变量(可以默认勾选,或者手动添加,如path=d:\perl\bin)。2. 解压openssl。3. 点击 windows 开始->所有应用->vs2015->开发者命令...

    去下载openssl-1.0.2m后,按如下流程编译,会报错

    1. 安装ActivePerl, 并添加环境变量(可以默认勾选,或者手动添加,如path=d:\perl\bin)。
    
    2. 解压openssl。
    
    3. 点击 windows 开始->所有应用->vs2015->开发者命令提示(Developer Command Prompt for 2015)。
    
    4. CD到解压后的openssl的根目录。
    
    5. 执行命令:perl Configure VC-WIN32(或者VC-WIN64A,取决于编译库类型,可以用–prefix=路径指定生成路径).
    
    6. ms\do_ms.bat(创建makefile文件,64位需要使用ms\do_win64aA.bat)
    
    7. 执行nmake - f ms\ntdll.mak(编译动态库)。
    
    8. 执行nmake - f ms\ntdll.mak test查看库是否有问题。
    
    9. 执行nmake - f ms\ntdll.mak install 。
    Building OpenSSL
        link /nologo /subsystem:console /opt:ref /debug /out:out32\md4test.exe @C:\Users\ADMINI~1\AppData\Local\Temp\nm11FA.tmp
    libeay32.lib(cryptlib.obj) : error LNK2019: 无法解析的外部符号 _OPENSSL_ia32_cpuid,该符号在函数 _OPENSSL_cpuid_setup 中被引用
    libeay32.lib(cryptlib.obj) : error LNK2001: 无法解析的外部符号 _OPENSSL_ia32cap_P
    libeay32.lib(sha1dgst.obj) : error LNK2019: 无法解析的外部符号 _sha1_block_data_order,该符号在函数 _SHA1_Final 中被引用
    libeay32.lib(sha256.obj) : error LNK2019: 无法解析的外部符号 _sha256_block_data_order,该符号在函数 _SHA256_Final 中被引用
    libeay32.lib(sha512.obj) : error LNK2019: 无法解析的外部符号 _sha512_block_data_order,该符号在函数 _SHA512_Final 中被引用
    libeay32.lib(md5_dgst.obj) : error LNK2019: 无法解析的外部符号 _md5_block_asm_data_order,该符号在函数 _MD5_Final 中被引用
    out32\md4test.exe : fatal error LNK1120: 6 个无法解析的外部命令
    

    此时正确的32位debug静态库顺序是

    perl Configure VC-WIN32 no-asm no-hw --prefix=c:\some\openssl\dir
    
    perl util\mkfiles.pl >MINFO  
    perl util\mk1mf.pl debug no-asm VC-WIN32 >ms\nt.mak  
    
    perl util\mkdef.pl 32 libeay > ms\libeay32.def  
    perl util\mkdef.pl 32 ssleay > ms\ssleay32.def  
    nmake -f ms\nt.mak install
    
    

    参考

    展开全文
  • openssl编译与交叉编译

    万次阅读 2019-01-26 17:57:09
    1、下载openssl源码包 ...2、Ubuntu编译与安装openssl ./config配置生成Makefile,-shared 表示生成动态库,也可通过参数 -prefix=xxx 自行指定安装目录,如下不配置则为默认安装路径。 # tar zxvf o...

    1、下载openssl源码包

    https://www.openssl.org/source/old/

    官网进不去,可到这个链接下载:

    http://distfiles.macports.org/openssl/

    若在Ubuntu上使用,选个最新的版本下载即可。

    2、Ubuntu编译与安装openssl

    ./config配置生成Makefile,-shared 表示生成动态库,也可通过参数 -prefix=xxx 自行指定安装目录,如下不配置则为默认安装路径。

    # tar zxvf openssl-1.0.2q.tar.gz
    # cd openssl-1.0.2q.tar.gz
    # ./config -shared
    # make
    # sudo make install

    从make install时的提示信息可知openssl库默认安装路径为:/usr/local/ssl/lib

    编译结果:

    3、openssl交叉编译

    交叉编译与Ubuntu编译类似,配置时通过【--prefix=绝对路径】选项指定安装路径(自行创建文件夹),然后修改Makefile文件,修改方式如下:

    # ./config no-asm -shared --prefix=/home/fangye/libs_build/openssl/build_arm
    # vim Makeifle

    指定交叉编译工具链

    搜索-m64选项并删除,共两处。

    查看交叉编译版本:

    如果后面没有hf,则需要在CFLAG 后面添加:-mfloat-abi=softfp 

    交叉编译、安装交叉编译后的库至之前自行指定的路径。

    # make
    # make install

    openwrt工具链交叉编译时可能会出现:

    ./libcrypto.so: undefined reference to `getcontext'
    ./libcrypto.so: undefined reference to `setcontext'
    ./libcrypto.so: undefined reference to `makecontext'

    这是因为openwrt的交叉编译工具链没有提供GNU C的ucontext库导致的,在执行config时加上 no-async 参数即可。

    交叉编译结果:

    展开全文
  • openssl动态编译

    2019-01-29 16:59:52
    编译版本 openssl-1.0.0d 文件目录结构 | bin | openssl.exe //openssl可执行程序 libeay32.dll //openssl用到的动态链接库 ssleay32.dll //openssl用到的动态链接库 | include // 包含所需的头文件 | ...
  • OpenSSL之六:OpenSSL源码编译安装

    千次阅读 2020-11-18 17:43:12
    OpenSSL源码的编译OpenSSL在Linux平台的编译源码准备编译安装OpenSSL在Windows平台的编译OpenSSL在Android平台的编译OpenSSL在Mac平台的编译OpenSSL在iOS平台的编译 无论在什么平台,OpenSSL编译一般需要经过三个...


    无论在什么平台,OpenSSL的编译一般需要经过三个步骤:

    1. 使用Configure批处理,根据平台环境、选用的编译器及其他参数设置编译的环境变量。
    2. 通过使用批处理指令来根据上面设置好的环境变量生成编译脚本文件。
    3. 使用特定的编译指令进行编译链接。

    本文将介绍OpenSSL在Linux、Windows、Android、Mac和iOS平台的编译方式。

    一、OpenSSL在Linux平台的编译

    打包环境

    在这里插入图片描述
    需要安装perl、make和gcc。

    源码准备

    OpenSSL压缩包
    解压

    编译安装

    1. 执行config
    ./config --prefix=/home/workspace/openssl/output/64
    

    在这里插入图片描述

    ./config -t
    

    在这里插入图片描述

    1. 执行make
    make
    

    在这里插入图片描述
    执行结果:
    在这里插入图片描述

    1. 执行make test
    make test
    

    在这里插入图片描述
    执行结果:
    在这里插入图片描述

    1. 执行make install
    make install
    

    在这里插入图片描述
    执行完成后,编译生成的文件将会放到/home/workspace/openssl/output/64目录下:
    在这里插入图片描述

    二、OpenSSL在Windows平台的编译

    打包环境

    Windows系统
    编译工具:Visual Studio 2019
    在这里插入图片描述
    INSTALL文件说明了OpenSSL在Windows编译的方式:
    在这里插入图片描述
    NOTES.WIN文件说明了编译需要的额外依赖工具,我们需要下载安装这些工具,并配置环境变量:
    在这里插入图片描述
    在这里插入图片描述

    编译32位库

    1. 打开[x86 Native Tools Command Prompt for VS 2019]:【开始】-【所有程序】—【Microsoft visual studio2019】—【x86 Native Tools Command prompt for VS 2019】(以管理员身份运行)
      在这里插入图片描述
    2. 切换到OpenSSL源码目录
      在这里插入图片描述
    3. 执行编译
    #第一步
    #若需要编译静态库需要增加no-shared参数,否则默认生成动态库
    #perl Configure VC-WIN32 no-shared --prefix=C:\Users\Username\Desktop\openssl\output\32
    perl Configure VC-WIN32 --prefix=C:\Users\Username\Desktop\openssl\output\32
    #第二步
    nmake 
    #第三步
    nmake test
    #第四步
    nmake install
    

    编译完成的目标文件:
    32位动态库

    编译64位库

    1. 打开[x64 Native Tools Command Prompt for VS 2019]:【开始】-【所有程序】—【Microsoft visual studio2019】—【x64 Native Tools Command Prompt for VS 2019】(以管理员身份运行)
      x64 Native Tools Command Prompt for VS 2019
    2. 切换到OpenSSl源码目录
      切换到源码目录
    3. 执行编译
    #第一步
    #若需要编译静态库需要增加no-shared参数,否则默认生成动态库
    #perl Configure VC-WIN64A no-shared --prefix=C:\Users\Username\Desktop\openssl\output\64
    perl Configure VC-WIN64A --prefix=C:\Users\Username\Desktop\openssl\output\64
    #第二步
    nmake 
    #第三步
    nmake test
    #第四步
    nmake install
    

    编译完成的目标文件:
    在这里插入图片描述

    错误处理

    注意:若在执行perl Configure VC-WIN32 --prefix=C:\Users\Username\Desktop\openssl\output\32或perl Configure VC-WIN64A --prefix=C:\Users\Username\Desktop\openssl\output\64时出现下列错误

    It looks like you don't have either nmake.exe or dmake.exe on your PATH,
    so you will not be able to execute the commands from a Makefile.  You can
    install dmake.exe with the Perl Package Manager by running:
    
        ppm install dmake
    

    找不到dmake
    执行:

    ppm install dmake
    

    若执行ppm install dmake还出现下面的错误:

    ppm install failed: DBD::SQLite::db selectrow_array failed: database disk image is malformed
    

    ppm无法安装
    删除C:\Users\FengGuodong\AppData\Local\ActiveState\ActivePerl目录下的文件:
    在这里插入图片描述
    重新执行:

    ppm install dmake
    

    等待下载安装完成。
    在这里插入图片描述
    dmake安装完成后,重新开始编译:

    #第一步
    #编译32位库
    #若需要编译静态库需要增加no-shared参数,否则默认生成动态库
    #perl Configure VC-WIN32 no-shared --prefix=C:\Users\Username\Desktop\openssl\output\32
    perl Configure VC-WIN32 --prefix=C:\Users\Username\Desktop\openssl\output\32
    
    #编译64位库
    #若需要编译静态库需要增加no-shared参数,否则默认生成动态库
    #perl Configure VC-WIN64A no-shared --prefix=C:\Users\Username\Desktop\openssl\output\64
    #perl Configure VC-WIN64A --prefix=C:\Users\Username\Desktop\openssl\output\64
    
    #第二步
    nmake 
    #第三步
    nmake test
    #第四步
    nmake install
    

    编译低版本OpenSSL

    OpenSSL1.0及其以下的版本,编译过程可能略有差别:

    # 编译32位动态库
    perl Configure VC-WIN32 --prefix=C:\Users\Username\Desktop\openssl\output\32
    ms\do_ms.bat
    # 可以修改ntdll.mak的CFLAG属性为MT或MD
    nmake -f ms\ntdll.mak
    nmake -f ms\ntdll.mak clean
    
    #编译64位动态库
    perl Configure VC-WIN64A --prefix=C:\Users\Username\Desktop\openssl\output\64
    ms\do_win64a.bat
    # 可以修改ntdll.mak的CFLAG属性为MT或MD
    nmake -f ms\ntdll.mak
    nmake -f ms\ntdll.mak clean
    
    # 编译32位静态库
    perl Configure VC-WIN32 --prefix=C:\Users\Username\Desktop\openssl\output\32
    ms\do_ms.bat
    # 可以修改nt.mak的CFLAG属性为MT或MD
    nmake -f ms\nt.mak
    nmake -f ms\nt.makk clean
    
    #编译64位静态库
    perl Configure VC-WIN64A --prefix=C:\Users\Username\Desktop\openssl\output\64
    ms\do_win64a.bat
    # 可以修改nt.mak的CFLAG属性为MT或MD
    nmake -f ms\nt.mak
    nmake -f ms\nt.makk clean
    

    三、OpenSSL在Android平台的编译

    打包环境

    在这里插入图片描述
    NOTES.ANDROID文件说明了在Linux系统环境交叉编译Android库的方式,我们需要安装和配置NDK。
    在这里插入图片描述
    我们将android-ndk-r20b安装在/usr/local/BUILD目录下,那么ndk的编译工具链在目录/usr/local/BUILD/android-ndk-r20b/toolchains下:在这里插入图片描述
    NDK必须依赖JDK,Linux环境下搭建Android NDK交叉编译环境请参考《Linux系统Android NDK编译环境搭建》

    配置环境变量

     export JAVA_HOME=/usr/local/BUILD/jdk1.8.0_181
     export JRE_HOME=${JAVA_HOME}/jre
     export ANDROID_NDK=/usr/local/BUILD/android-ndk-r20b
     export PATH=${JAVA_HOME}/bin:${ANDROID_NDK}:${PATH}
    

    在这里插入图片描述

    源码准备

    OpenSSL压缩包
    解压

    创建编译脚本

    在OpenSSL源码目录下创建build.sh,脚本内容如下:

    #!/bin/bash
    set -e
    set -x
    
    # Android NDK r17之后不支持使用gcc,需要使用clang编译,若不配置使用clang会提示找不到android-gcc命令
    CC=clang
    # OpenSSL源码目录
    OPENSSL_PATH=/home/workspace/openssl/openssl-1.1.1b
    
    func_cmp() {
    	make clean &&
    	rm -rf $OPENSSL_PATH/output/$ARCH &&
    	mkdir -p $OPENSSL_PATH/output/$ARCH &&
    	export PATH=$ANDROID_NDK/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH &&
    	./Configure $ARCH_NAME -D__ANDROID_API__=21 --prefix=$OPENSSL_PATH/output/$ARCH &&
    	make && make install
    }
    
    ARCH_NAME=android-arm
    export PATH=$ANDROID_NDK/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH &&
    ./Configure $ARCH_NAME -D__ANDROID_API__=21 --prefix=$OPENSSL_PATH/output/$ARCH
    
    #for ARCH in armeabi-v7a armeabi arm64-v8a x86 x86_64 mips mips64
    for ARCH in armeabi-v7a armeabi arm64-v8a x86 x86_64
    do
    	echo $ARCH
    
    	if [ "$ARCH" = "armeabi-v7a" ]; then
    		ARCH_NAME=android-arm
    	fi
    
    	if [ "$ARCH" = "armeabi" ]; then
    		ARCH_NAME=android-arm
    	fi
    
    	if [ "$ARCH" = "arm64-v8a" ]; then
    		ARCH_NAME=android-arm64
    	fi
    
    	if [ "$ARCH" = "mips" ]; then
    		ARCH_NAME=android-mips
    	fi
    
    	if [ "$ARCH" = "mips64" ]; then
    		ARCH_NAME=android-mips64
    	fi
    
    	if [ "$ARCH" = "x86" ]; then
    		ARCH_NAME=android-x86
    	fi
    
    	if [ "$ARCH" = "x86_64" ]; then
    		ARCH_NAME=android-x86_64
    	fi
    
    	echo $TOOL_CHAIN
    	func_cmp
    done
    

    执行编译脚本

    执行脚本
    等待编译完成,在目录/home/workspace/openssl/openssl-1.1.1b/output下可以找到编译好的目标文件:
    arm
    x86和x86_64

    四、OpenSSL在Mac平台的编译

    打包环境

    压缩包

    源码准备

    OpenSSL压缩包
    解压后:
    解压缩包

    执行编译

    #第一步
    ./config --prefix=/Users/ft/Desktop/openssl/openssl-1.1.1b/output
    #若需要编译32位的库,需要添加参数KERNEL_BITS=32
    #KERNEL_BITS=32 ./config --prefix=/Users/ft/Desktop/openssl/openssl-1.1.1b/output
    #第二步
    make
    #第三步
    make test
    #第四步
    make install
    

    编译生成目标文件:
    在这里插入图片描述

    五、OpenSSL在iOS平台的编译

    打包环境

    环境

    源码准备

    OpenSSL压缩包
    解压后:
    解压缩包

    创建编译脚本

    #!/bin/bash
    
    set -u
    
    OPENSSL_SRC_DIR=${PWD}
    OPENSSL_BUILD_DIR=${OPENSSL_SRC_DIR}/output
    OPENSSL_BUILD_LOG_DIR=${OPENSSL_BUILD_DIR}/log
    OPENSSL_BUILD_UNIVERSAL_DIR=${OPENSSL_BUILD_DIR}/universal
    OPENSSL_UNIVERSAL_LIB_DIR=${OPENSSL_BUILD_UNIVERSAL_DIR}/lib
    
    rm -rf ${OPENSSL_BUILD_DIR}
    
    mkdir ${OPENSSL_BUILD_DIR}
    mkdir -p ${OPENSSL_BUILD_LOG_DIR}
    mkdir -p ${OPENSSL_BUILD_UNIVERSAL_DIR}
    mkdir -p ${OPENSSL_UNIVERSAL_LIB_DIR}
    
    CLANG=$(xcrun --find clang)
    
    IPHONE_OS_SDK_PATH=$(xcrun -sdk iphoneos --show-sdk-path)
    IPHONE_OS_CROSS_TOP=${IPHONE_OS_SDK_PATH//\/SDKs*/}
    IPHONE_OS_CROSS_SDK=${IPHONE_OS_SDK_PATH##*/}
    
    IPHONE_SIMULATOR_SDK_PATH=$(xcrun -sdk iphonesimulator --show-sdk-path)
    IPHONE_SIMULATOR_CROSS_TOP=${IPHONE_SIMULATOR_SDK_PATH//\/SDKs*/}
    IPHONE_SIMULATOR_CROSS_SDK=${IPHONE_SIMULATOR_SDK_PATH##*/}
    
    ARCH_LIST=("armv7" "armv7s" "arm64" "i386" "x86_64")
    ARCH_COUNT=${#ARCH_LIST[@]}
    CROSS_TOP_LIST=(${IPHONE_OS_CROSS_TOP} ${IPHONE_OS_CROSS_TOP} ${IPHONE_OS_CROSS_TOP} ${IPHONE_SIMULATOR_CROSS_TOP} ${IPHONE_SIMULATOR_CROSS_TOP})
    CROSS_SDK_LIST=(${IPHONE_OS_CROSS_SDK} ${IPHONE_OS_CROSS_SDK} ${IPHONE_OS_CROSS_SDK} ${IPHONE_SIMULATOR_CROSS_SDK} ${IPHONE_SIMULATOR_CROSS_SDK})
    
    config_make()
    {
    	ARCH=$1;
    	export CROSS_TOP=$2
    	export CROSS_SDK=$3
    	# 启用bitcode
    	export CC="${CLANG} -arch ${ARCH} -miphoneos-version-min=6.0 -fembed-bitcode"
    	# 不启用bitcode
    	#export CC="${CLANG} -arch ${ARCH} -miphoneos-version-min=6.0"
    
    	make clean &> ${OPENSSL_BUILD_LOG_DIR}/make_clean.log
    
    	echo "configure for ${ARCH}..."
    
    	if [ "x86_64" == ${ARCH} ]; then
        	./Configure iphoneos-cross --prefix=${OPENSSL_BUILD_DIR}/${ARCH} no-asm &> ${OPENSSL_BUILD_LOG_DIR}/${ARCH}-conf.log
    	else
        	./Configure iphoneos-cross --prefix=${OPENSSL_BUILD_DIR}/${ARCH} &> ${OPENSSL_BUILD_LOG_DIR}/${ARCH}-conf.log
    	fi
    
    	echo "build for ${ARCH}..."
    	make &> ${OPENSSL_BUILD_LOG_DIR}/${ARCH}-make.log
    	make install_sw &> ${OPENSSL_BUILD_LOG_DIR}/${ARCH}-make-install.log
    
    	unset CC
    	unset CROSS_SDK
    	unset CROSS_TOP
    
    	echo -e "\n"
    }
    
    for ((i=0; i < ${ARCH_COUNT}; i++))
    do
    	config_make ${ARCH_LIST[i]} ${CROSS_TOP_LIST[i]} ${CROSS_SDK_LIST[i]}
    done
    
    create_lib()
    {
    	LIB_SRC=lib/$1
    	LIB_DST=${OPENSSL_UNIVERSAL_LIB_DIR}/$1
    	LIB_PATHS=( ${ARCH_LIST[@]/#/${OPENSSL_BUILD_DIR}/} )
    	LIB_PATHS=( ${LIB_PATHS[@]/%//${LIB_SRC}} )
    	lipo ${LIB_PATHS[@]} -create -output ${LIB_DST}
    }
    
    create_lib "libssl.a"
    create_lib "libcrypto.a"
    
    cp -R ${OPENSSL_BUILD_DIR}/armv7/include ${OPENSSL_BUILD_UNIVERSAL_DIR}
    
    echo "done."
    

    执行编译脚本

    将编译脚本build.sh拷贝到OpenSSL目录下,开始执行编译:
    在这里插入图片描述
    编译生成目标文件:
    在这里插入图片描述

    展开全文
  • OpenSSL裁剪编译

    千次阅读 2014-08-18 15:45:18
    1. http://www.curl.haxx.se/ 下载 cURL 源码,\projects\build-openssl.bat 即 OpenSSL编译批处理。 2. http://www.openssl.org/ 下载 OpenSSL 源码。 二、重要文件: 1. \ms\do_ms.bat 生成 mak 文件的...
  • 最近写个小工具需要依赖openssl的静态lib库,本来是有其它同事编译好的x32和x64版本的lib库,可惜他编译lib库是用vs2008环境编译的。我这个新项目使用vs2019开发,所以不能直接引用现有的lib库,只能重新使用vs...
  • openssl-1.1.0c 的编译结果 包含x86,x64,linux版本 libcrypto.lib libssl.lib libcrypto.a libssl.a libssl.so.1.1 libcrypto.so.1.1 libssl-1_1-x64.dll libcrypto-1_1-x64.dll libcrypto-1_1.dll libssl-1_1.dll
  • openssl_0.9.8r编译lib

    热门讨论 2011-07-06 20:01:47
    开源代码openssl_0.9.8r 编译的结果 lib库 bin include libeay32.lib ssleay32.lib
  • openssl_lib.zip

    2019-11-29 18:06:55
    openssl lib VS2010编译出来的库,可以直接使用 openssl lib VS2010编译出来的库,可以直接使用 openssl lib VS2010编译出来的库,可以直接使用
  • openssl 交叉编译

    2020-07-16 19:08:52
    交叉编译openssl 需要交叉编译aarch64版本的openssl,需要在第一个参数位置指定目标架构,–cross-compile-prefix指定了命令前缀,当然这些命令的路径需要在PATH中设置。 ./Configure linux-aarch64 --cross-...
  • 一、Openssl编译安装 一、准备工作 1、Openssl下载地址:https://www.openssl.org/source/ 2、ActivePerl下载地址:http://www.activestate.com/activeperl/downloads 3、Vs2012下载并安装,此处不再多说。 4、说明...
  • openssl交叉编译 mips环境

    千次阅读 2015-12-02 19:11:57
    如果只是正常环境下使用openssl编译比较简单,只需要解压缩openssl 1.0.1p版本 然后进入根目录按照如下命令: 1、./configure --prefix=/user/local 2、make & make install 这样就可以在编译并安装
  • openssl编译好的dll、lib、头文件

    热门讨论 2011-02-08 16:27:21
    openssl在windows下编译好的dll、lib、头文件,可以直接使用,免去了开发者们编译openssl的麻烦。
  • windows下完全的openSSL,其中包含openssl的源码和lib文件
  • openssl vs2017环境下编译的dll,lib,includ;可以直接使用
  • qt5.8_for_vs2015静态编译&gt;&gt;,现假定已经静态编译了qt5.8版本,需要追加对openssl的静态编译。 就网络network模块进行编译举例: 1)qt5.8使用的openssl版本为1.0.2,其他平台可以去...
  • openssl 1.0.0编译

    千次阅读 2013-04-01 18:31:24
    win32下编译openssl 1.0.0 1) 下载openssl 1.0.0 http://www.openssl.org/source/ 2)下载ActivePerl http://www.activestate.com/activeperl/downloads 3) 进入openssl home目录 cd v:\openssl\openssl...
  • vs编译openssl

    2018-10-16 14:17:03
    一、Openssl简介 OpenSSL 是一个安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。OpenSSL被曝出现严重安全漏洞后,发现多数通过SSL...
  • windows下openssl编译

    2016-07-26 10:33:58
    windows下openssl编译flyfish目的:编译输出win32平台下动态链接库 dll 编译环境VC++2013 教程在源码目录下的INSTALL.W32文件 需要下载工具ActivePerl,并安装ActivePerl步骤 1 命令行打开VS2013 ...
  • openssl编译

    2018-09-04 15:41:44
    下载openssl源码 https://www.openssl.org/source/ 这里选择的版本是1.1.0i openSSL的编译要用activeperl  ... nasm ...OpenSSL编译需要nasm(http://www.nasm.us), 下载并安装, 将nasm.exe加入...
  • curl依赖openssl,所以需要先编译openssl编译openssl: 下载openssl:https://github.com/openssl/openssl/tree/OpenSSL_1_0_2r,下载解压。 参照:https://blog.csdn.net/ty3219/article/details/77717478 的...
  • 使用vs2008 编译openssl 1.0.2g dll和lib文件用于二次开发
  • vs2019编译openssl静态库

    千次阅读 2019-11-19 16:49:33
    最近写个小工具需要依赖openssl的静态lib库,本来是有其它同事编译好的x32和x64版本的lib库,可惜他编译lib库是用vs2008环境编译的。 我这个新项目使用vs2019开发,所以不能直接引用现有的lib库,只能重新使用vs...
  • 准备编译脚本 到 https://github.com/leenjewel/openssl_for_ios_and_android 下载别人写好的编译环境配置脚本 build-openssl4android.sh 中,...LIB_NAME=“openssl-1.1.0f” 脚本会自动下载 openssl 1.1.1e,需要...
  • 1 问题描述 服务器: 龙心/deepin Linux deepin 3.10.108-deepin+ #3 SMP PREEMPT Tue Jan 23 16:54:44 CST...服务器自带的 openssl 版本: #&gt; openssl version -a OpenSSL 1.1.0e 16 Feb 2017 built on: rep...
  • Windows下openssl编译安装 2013年12月11日 ⁄ 综合 ⁄ 共 3476字 ⁄ 字号 小 中 大 ⁄ 评论关闭 此次安装是在XP下Openssl编译安装: 先下载Openssl源码、Perl for Win32 下载地址: Openssl源码:...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 46,468
精华内容 18,587
关键字:

opensslvs编译lib