Cygwin 版本的 Curl 安装,提取,使用笔记
Cygwin 版本的 Curl 依赖的 DLL 清单
提取 Cygwin 版本的 Curl 工具
提取方法1(笨办法)
提取方法2(推荐方法)
精简 Cygwin
可精简工具包列表(个人笔记)
手动卸载工具包步骤
正常卸载工具包步骤
安装 Cygwin 工具包 步骤
1.本地检索 工具包
2.在线检索 工具包
安装 Cygwin 步骤
Cygwin 版本的 Curl 安装,提取,使用笔记
Cygwin 版本的 Curl 使其恢复 HTTPS 请求功能
假如仅把依赖的DLL复制出来,正常HTTP请求是没问题的.也能正确上传中文到PHP服务器不乱码.
但是无法正确访问HTTPS服务器.提示以下错误:>curl https://baidu.comcurl: (77) error setting certificate verify locations:CAfile: /etc/pki/tls/certs/ca-bundle.crtCApath: none
于是使用排除法一个文件夹一个文件夹的排除,删除.最终确定了一下文件夹结构及其文件是必须的:
├─bin│ curl.exe│ cygcom_err-2.dll│ cygcrypto-1.0.0.dll│ cygcurl-4.dll│ cygexpat-1.dll│ cyggcc_s-seh-1.dll│ cyggssapi_krb5-2.dll│ cygiconv-2.dll│ cygidn-11.dll│ cygintl-8.dll│ cygk5crypto-3.dll│ cygkrb5-3.dll│ cygkrb5support-0.dll│ cyglber-2-4-2.dll│ cygldap-2-4-2.dll│ cygmetalink-3.dll│ cygnghttp2-14.dll│ cygpsl-5.dll│ cygsasl2-3.dll│ cygssh2-1.dll│ cygssl-1.0.0.dll│ cygunistring-2.dll│ cygwin1.dll│ cygz.dll├─etc│ └─pki│ ├─ca-trust│ │ └─extracted│ │ └─pem│ │ tls-ca-bundle.pem│ └─tls│ cert.pem(必须是系统属性 attrib +s)│ certs(必须是系统属性 attrib +s)└─usr └─ssl └─certs ca-bundle.crt(必须是系统属性 attrib +s) ca-bundle.trust.crt(必须是系统属性 attrib +s)Cygwin 版本的 Curl 依赖的 DLL 清单
- cygcom_err-2.dll
- cygcrypto-1.0.0.dll
- cygcurl-4.dll
- cygexpat-1.dll
- cyggcc_s-seh-1.dll
- cyggssapi_krb5-2.dll
- cygiconv-2.dll
- cygidn-11.dll
- cygintl-8.dll
- cygk5crypto-3.dll
- cygkrb5-3.dll
- cygkrb5support-0.dll
- cyglber-2-4-2.dll
- cygldap-2-4-2.dll
- cygmetalink-3.dll
- cygnghttp2-14.dll
- cygpsl-5.dll
- cygsasl2-3.dll
- cygssh2-1.dll
- cygssl-1.0.0.dll
- cygunistring-2.dll
- cygwin1.dll
- cygz.dll
提取 Cygwin 版本的 Curl 工具
提取方法1(笨办法)
- 把
\cygwin64\bin目录里的 curl.exe 复制到 新文件夹. - 在 新文件夹 运行 curl ,此时会提示缺少 XXX.dll ,然后把缺少的 dll 复制到新文件夹.
- 循环 步骤2 直到能正常运行 curl 为止.
提取方法2(推荐方法)
- 下载软件
Dependency Walker - 用该软件打开 curl 程序
- 再 File - Save As - 保存类型 - .txt
- 用
高级文本编辑器打开保存的文本 - 提取所有在
\cygwin64\bin目录的DLL路径字符串 - 用
Excel软件把重复的路径字符串清除掉. - 再在
高级文本编辑器里在 所有路径字符串前面加上COPY /Y字符串 并全部复制 - 再在
新文件夹里空白处 按住 Shift 打开 右键菜单 - 在此处打开命令窗口 - 粘帖 - Enter - 搞定所有DLL!
精简 Cygwin
可精简工具包列表(个人笔记)
- gawk: GNU awk, a pattern scanning and processing language
- groff: GNU roff formatter
- libdb5.3: Oracle Berkeley D (runtime)
手动卸载工具包步骤
鉴于使用setup工具无法正常卸载某些工具包(如某些核心工具包),于是只好手动删除相关文件来卸载了.
此步骤要能脚本化才方便.否则要删除文件多的话,手工比对非常麻烦.
初期可用 BeyondCompare 软件的文件夹比对功能来删除.
- 进入 缓存文件夹(Local Package Directory)
如: 缓存文件夹\网址\x86_64\release - 找到需要卸载的工具包
如: gawk\gawk-4.1.4-1.tar.xz - 根据.tar.xz包里的文件夹结构,去删除 Cygwin安装文件夹(Root Directory)对应的文件即可.
正常卸载工具包步骤
- 参照 安装 Cygwin 工具包 步骤 到达 Select Packages 步骤
- 单击待精简工具包New状态 Keep 为 Uninstall 即可卸载.
安装 Cygwin 工具包 步骤
1.本地检索 工具包
理论上 使用 Install From Local Directory 也是可行的,因为记录所有可安装的工具数据库文件 setup.ini已经下载完毕.但是实际使用时却无法正确读取出可安装的列表供检索.只能走在线检索了.
经过摸索,终于发现可以直接本地检索的方法了!
- 和 “安装 Cygwin 步骤” 一样
- 但是选择 Install From Local Directory
- 到达 Select Packages 步骤
- 此时选择 View 为 Full
- 然后回退到上一步
- 再进入 Select Packages 步骤
- 此时就发现滚动条明显变长了.说明成功列举出所有可供安装的工具包列表了.
猜测是 setup 的一个Bug? 或者是一个未声明的”优化”,第一遍只显示”已安装的工具包”,第二遍才显示所有可供安装的工具包列表?
2.在线检索 工具包
- 打开 setup-x86_64.exe
- 和 “安装 Cygwin 步骤” 一样到达 Select Packages 步骤
- 检索 想要安装的工具名称 即可.
安装 Cygwin 步骤
- 打开官网 安装指南 界面
- 下载最新安装包 setup-x86_64.exe
- 打开 Cygwin下载镜像列表网站选择最近的国家.
如中国的:http://mirrors.ustc.edu.cn/cygwin/,http://mirrors.neusoft.edu.cn/cygwin/ - 选择 Install From Internet
- 在 Cygwin Setup - Choose Download Site 时 添加选择的镜像网址.
- 在 Cygwin Setup - Select Packages 时 先不选择任何包
- 即可得到一个干净的单纯的 Cygwin 环境了.
Cygwin 版本的 Curl 安装,提取,使用笔记的更多相关文章
- cURL安装和使用笔记
0.前言 cURL是一个利用URL语法在命令行下工作的文件传输工具.它支持文件上传和下载,所以是综合传输工具,但习惯称cURL为下载工具.cURL还包含了用于程序开发的libcurl.cURL ...
- Dubbo入门到精通学习笔记(三):持续集成管理平台之SVN版本管理系统的安装和使用
文章目录 持续集成管理平台介绍 持续集成介绍 持续集成管理平台的组成 持续集成实践介绍 即将学习 SVN版本管理系统的安装 安装 Subversion + Apache 安装 jsvnadmin 简单 ...
- 浅析py-faster-rcnn中不同版本caffe的安装及其对应不同版本cudnn的解决方案
浅析py-faster-rcnn中不同版本caffe的安装及其对应不同版本cudnn的解决方案 本文是截止目前为止最强攻略,按照本文方法基本可以无压力应对caffe和Ross B. Girshick的 ...
- debain 8安装为知笔记(how to install wiznote in debain 8)
刚装了debain8后想安装为知笔记,百度之后发现为知笔记原来是开源软件.代码托管在github上:https://github.com/WizTeam/WizQTClient 但是上面只有Ubunt ...
- windows环境下curl 安装和使用
原文:https://blog.csdn.net/qq_21126979/article/details/78690960?locationNum=10&fps=1 一.curl 安装 cur ...
- redis 安装配置学习笔记
redis 安装配置学习笔记 //wget http://download.redis.io/releases/redis-2.8.17.tar.gz 下载最新版本 wget http://downl ...
- Centos7 安装 Python 的笔记
Centos7 安装 Python 的笔记 注意:系统自带的Python2.7不要改动,最好也不要出错,不然yum之类的工具可能会出错. 安装Python3.7.0 TensorFlow对Python ...
- Ubuntu 及衍生版本用户如何安装 SmartGit/HG
http://www.linuxidc.com/Linux/2014-06/102621.htm Ubuntu 及衍生版本用户如何安装 SmartGit/HG 6.0.0 [日期:2014-06-03 ...
- TortoiseGit和msysGit安装及使用笔记(windows下使用上传数据到GitHub)[转]
TortoiseGit和msysGit安装及使用笔记(windows下使用上传数据到GitHub) Git-1.7.11-preview+GitExtensions244SetupComplete+T ...
随机推荐
- Android集成高德地图如何自定义marker
高德地图自定义Marker 高德地图默认的marker样式是这种 一般的修改样式是通过icon接口来调整 MarkerOptions markerOptions = new MarkerOptions ...
- Ubuntu14.04 在右键中添加 在终端中打开
1.在terminal中执行: sudo apt-get install nautilus-open-terminal 此时可能会提示:nable to locate package nautilus ...
- Codeforces 935E Fafa and Ancient Mathematics(表达式转树 + 树型DP)
题目链接 Codeforces Round #465 (Div. 2) Problem E 题意 给定一个表达式,然后用$P$个加号和$M$个减号填充所有的问号(保证问号个数等于$P + M$) ...
- JSK 11: 移除数组中的重复元素
题目描述 给定一个升序排列的数组,去掉重复的数,并输出新的数组的长度. 例如:数组 $A = \{1, 1, 2\}$,你的程序应该输出 $2$ 即新数组的长度,新数组为 $\{1, 2\}$. 要求 ...
- Bluetooth篇 开发实例之九 和蓝牙模块通信
首先,我们要去连接蓝牙模块,那么,我们只要写客户端的程序就好了,蓝牙模块就相当于服务端. 连接就需要UUID. #蓝牙串口服务SerialPortServiceClass_UUID = ‘{00001 ...
- Oracle ORA-01033: 错误解决办法
转自 Oracle ORA-01033: 错误解决办法
- IO流知识点
如何判断是输入还是输出?答:以程序为中心.如何判断是解码还是编码?答:以程序为中心.程序只懂二进制,所以,以二进制转换成字符是解码,字符转换成二进制是编码.1. 首先,File 它是给程序跟文件或文件 ...
- 清理memcached缓存
清理memcached缓存 学习了:https://blog.csdn.net/allus0918/article/details/50481927 使用telnet登录 flush_all 命令:
- div 事件透传
有些时候,我们会想要把一个 div 层覆盖在另一个 div 层上,要让下层的 div 响应鼠标事件而上层的不响应仅仅只做内容展示. 这种时候,我们就可以用到一个 CSS 属性:pointer-even ...
- ZOJ1157, POJ1087,UVA 753 A Plug for UNIX (最大流)
链接 : http://acm.hust.edu.cn/vjudge/problem/viewProblem.action? id=26746 题目意思有点儿难描写叙述 用一个别人描写叙述好的. 我的 ...