curl+openssl编译
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编译的更多相关文章
- OpenSSl编译
1.下载openssl代码,下载地址:http://www.openssl.org/source/ ,如果使用winrar解压失败的话(提示不能创建符号链接),可以关闭UAC.2.下载安装Active ...
- openssl编译时!遇见的问题
openssl编译: 1.编译静态库 ./config --prefix=/root/openssl/soft make 2.编译动态库 ./config --prefix=/root/openssl ...
- Qt开发笔记:OpenSSL库介绍、windows上mingw32版本的OpenSSL编译模块化
前言 Windows上mingw32版本的openssl的编译是属于比较棘手的,OpenSSL本身不提供支持.. OpenSSL 介绍 OpenSSL是一个开放源代码的软件库包,应用程序可 ...
- libcurl库openssl编译
openssl编译 win32: perl Configure no-shared VC-WIN32 --prefix=E:/lib/openssl-1.1.1 linux: ./config -f ...
- Curl的编译
下载 curl的官网:https://curl.haxx.se/ libcurl就是一个库,curl就是使用libcurl实现的. curl是一个exe,也可以说是整个项目的名字,而libcurl就是 ...
- lua curl动态链接库编译安装
关于lua curl的资料网上并不是很多.找来找去就那么几个,所以我绝得很有必要把我的经验记下来,以防下次忘记 ...
- openssl编译(VC6.0)
官网:http://www.openssl.org/ 得到源码: git clone https://github.com/openssl/openssl 一.用vc编译器编译: 1.下载nasm: ...
- linux 下 openssl 编译和交叉编译
此随便记录一下编译openssl时遇到的各种问题以及解决办法. 点击此处下载 OpenSSL(version-1.0.1e) linux 64位系统编译32位版本: setarch i386 ./Co ...
- windows下openssl编译
昨晚,在编译rabbitmq-c时,使用cmake生成vs项目文件时遇到下列错误: CMake Error at C:/Program Files/CMake/share/cmake-3.6/Modu ...
随机推荐
- dock停靠管理器
DockManager停靠管理器可以对它所拥有的 停靠面板 的行为和外观设置进行集中控制.DockPanel停靠面板是停靠应用程序的主要构成部件. 常规面板 DockPanel.ParentPanel ...
- linux 学习 软件工具
_____secureCRT 远程通信工具 第二行第二个快速连接,输入主机名,即ip地址,和用户名,root .其它默认:端口22,协议ssh2,防火墙 none. 保存会话,连接.需要输入用户密码. ...
- DGV换行操作
DGV.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True;
- 关于Jquery的delegate绑定事件无效
今天在做一个页面,用的是easyui页面有很多的tabs,里面都放了iframe 需要在load事件动态调整iframe高度 发现始终无法使用delegate来绑定load事件. 纠结了一下午发现了问 ...
- REST 风格的api
REST即表述性状态传递,是设计风格不是标准.REST架构风格有以下6个约束: 1. 客户-服务器(Client-Server):通信只能由客户端单方面发起,表现为请求-响应形式. 2.无状态:通信的 ...
- SQL Server 2008R2数据库文件导入到SQL Server 2008数据库中
最近,电脑重装系统之后,安装了SQL Server 2008.附加数据库文件的时候,发现无法附加,提示版本不对.想起来,原来的数据库版本是SQL Server 2008R2.低版本的数据库管理工具无法 ...
- dos 批处理删除svn目录
转自 http://blog.sina.com.cn/mpl398235717 @echo offecho ********************************************** ...
- eclipse中outline中图标的含义
outline: 实心的代表方法 空心的代表属性 绿色的圆表示公有public 黄色的菱形表示保护protect 红色的方形表示私有private 蓝色的三角表示default 图形后加字母S代表该属 ...
- const用法小结
const与指针 char *const p --> char *(const p) --> 指针常量 char const *p --> char (const *p) --> ...
- 动态调用webservice及WCF服务
动态调用web服务,该方法只针对Web service, WCF的服务不行,如果是WCF的就通过工具直接生产代理类,把代理类配置到调用的项目中,通过配置客户端的终结点动态的取实现: 通过Svcutil ...