curl不支持openssl的静态库,所以编译openssl的时候,应该加上shared 参数,记录一下我亲手编译的参数:

./configure --prefix=/usr/local/openssl shared zlib

shared 表示生成动态库

zlib 当然就是zlib了,这个库编译很容易,最好不要自行指定安装位置,因为别的软件安装的时候可能会从你指定的目录里头找不到zlib

接下来就是curl了,高版本的openssl(我用的是openssl-1.0.2e)不再导出V2版本的ssl函数,所以不能用低版本的curl+openssl-1.0.2e,至少curl-7.20.1是不能跟openssl-1.0.2e配合使用,所以我用了curl-7.46.0可以编译通过

export PKG_CONFIG_PATH=/usr/local/openssl/lib/pkgconfig

curl的帮助文档提到,如果系统安装有pkg-config就应该通过配置PKG_CONFIG_PATH让configure程序找到openssl否则curl找不到openssl就很麻烦,这是我踩过的坑,死活找不到openssl,整得我的微信后台都不正常

上参数:

./configure --prefix=/usr/local/libcurl7.46.0 --enable-http --enable-ftp --enable-file --enable-ldap --enable-ldaps --enable-dict --enable-proxy --with-ssl

顺便放上php的参数,另php编译oci扩展也比较麻烦,下次上

./configure '--prefix=/usr/local/php' '--enable-fpm' '--enable-mbstring' '--enable-soap' '--enable-bcmath' '--enable-sockets' '--enable-zip' '--with-openssl=/usr/local/openssl' '--with-libxml-dir=/usr/local/libxml2' '--with-curl=/usr/local/libcurl7.46.0' '--with-pcre-dir=/usr/local/pcre' '--with-zlib-dir=/usr/local/zlib' '--with-freetype-dir=/usr/local/freetype2' '--with-png-dir=/usr/local/libpng' '--with-jpeg-dir=/usr/local/jpeg' '--with-gd=/usr/local/libgd' '--with-xpm-dir=/usr/local/libxpm' '--with-mysql' '--with-mysqli'

curl+openssl编译的更多相关文章

  1. OpenSSl编译

    1.下载openssl代码,下载地址:http://www.openssl.org/source/ ,如果使用winrar解压失败的话(提示不能创建符号链接),可以关闭UAC.2.下载安装Active ...

  2. openssl编译时!遇见的问题

    openssl编译: 1.编译静态库 ./config --prefix=/root/openssl/soft make 2.编译动态库 ./config --prefix=/root/openssl ...

  3. Qt开发笔记:OpenSSL库介绍、windows上mingw32版本的OpenSSL编译模块化

    前言   Windows上mingw32版本的openssl的编译是属于比较棘手的,OpenSSL本身不提供支持..   OpenSSL 介绍   OpenSSL是一个开放源代码的软件库包,应用程序可 ...

  4. libcurl库openssl编译

    openssl编译 win32: perl Configure  no-shared VC-WIN32 --prefix=E:/lib/openssl-1.1.1 linux: ./config -f ...

  5. Curl的编译

    下载 curl的官网:https://curl.haxx.se/ libcurl就是一个库,curl就是使用libcurl实现的. curl是一个exe,也可以说是整个项目的名字,而libcurl就是 ...

  6. lua curl动态链接库编译安装

    关于lua curl的资料网上并不是很多.找来找去就那么几个,所以我绝得很有必要把我的经验记下来,以防下次忘记                                              ...

  7. openssl编译(VC6.0)

    官网:http://www.openssl.org/ 得到源码: git clone  https://github.com/openssl/openssl 一.用vc编译器编译: 1.下载nasm: ...

  8. linux 下 openssl 编译和交叉编译

    此随便记录一下编译openssl时遇到的各种问题以及解决办法. 点击此处下载 OpenSSL(version-1.0.1e) linux 64位系统编译32位版本: setarch i386 ./Co ...

  9. windows下openssl编译

    昨晚,在编译rabbitmq-c时,使用cmake生成vs项目文件时遇到下列错误: CMake Error at C:/Program Files/CMake/share/cmake-3.6/Modu ...

随机推荐

  1. Makefile <网络转载>

    陈皓 (CSDN)概述——什 么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和 professional的 ...

  2. Quartus II中的Waring(转)

    1.Found clock-sensitive change during active clock edge at time <time> on register "<n ...

  3. C# 导入EXCEL 报错外部表不是预期的格式错误 .

    错误经过:在读取Excel时,出现外部表不是预期的格式 错误原因1: 由于Excel 97-2003的连接格式与Excel 2010 的 不同造成. 以下是从网上摘抄原文 Excel “Externa ...

  4. shell 里的变量 总结

    对于linux shell的使用者来说, 巧妙的应用变量不仅能够快速的解决问题,同时能够获取非常大的乐趣,因为shell的变量内部可以附加一些运算,使得程序非常简洁明了并且功能强大,以下详细介绍一下: ...

  5. Masonry学习笔记

    1.边距 [bottomView mas_makeConstraints:^(MASConstraintMaker *make) { make.left.equalTo(self.view).offs ...

  6. Android_layout 布局(二)

    昨天学习了layout 布局的线性布局和相对布局. 今天我们学习剩余的三个布局,分别是: 一.帧布局(FrameLayout) 在这个布局中,所有的子元素都不能被指定放置的位置,它们通通放于这块区域的 ...

  7. Node debug

    node-inspector & node --debug-brk   test.js 在 chrome 中调试 'use strict'; var P2PSpider = require(' ...

  8. ubuntu 双线双网卡双IP实现方式

    昨天金桥机房上架了一台多玩的测试机,系统是ubuntu9.04 X64的系统,母机IBM X336机器.用户需求是双线,故采用一个网卡配置电信地址,另一个网卡配置联通地址,安装好系统后配置好IP发现联 ...

  9. tfs 任务自定义项

    vs 命令 cd C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE\PrivateAssemblies 导出工作项类型文件 修改xml ...

  10. 预习笔记 多态 --S2 4.3

    第三章 多态 polymorphism 多态 instance 例子override 重载 constructor 构造器ClassCastException 类型转换异常upcasting 上抛 d ...