windows下安装pysqlcipher模块
来源:互联网 发布:淘宝香帝缘 编辑:程序博客网 时间:2024/05/01 22:17
macos和linux安装方法很简单,执行:
pip install pysqlcipher
很容易就能安装上,但是在windows下面,就不一样了,首先我们在控制台执行上面的命令:
pip install pysqlcipher
然后会发现如下报错:
错误提示:Fatal error: OpenSSL could not be detected!
1,安装OpenSSL
是的,缺少openssl,那我们去官网下载,地址如下:http://openssl.org/source/ ,我下载的版本是0.9.8
下载回来的是源码,需要安装vc编译,编译步骤百度吧,很多,就不在这里描述了。
编译好之后会在openssl目录生成lib及dll二进制文件,备用。
2,安装vc++ compiler for python2.7
地址:http://aka.ms/vcpython27
必须安装,否则安装会报错要求你去下载。
3,查看安装脚本
虽然openssl已经生成,但是怎么让pysqlcipher的检测到呢?这里只能去看他的源码了。源码在github上。
然后我们打开根目录下的setup.py文件。
在第185行,我们看到:
openssl_conf = os.environ.get('OPENSSL_CONF')
是的,安装脚本通过环境变量OPENSSL_CONF来读取openssl位置。
继续往后看,会看到:
ext.include_dirs.append(os.path.join(openssl, "include")) . . .ext.extra_link_args.append("libeay32.lib") ext.extra_link_args.append( "/LIBPATH:" + os.path.join(openssl, "lib") )
于是,我们知道头文件应该放在OPENSSL_CONF/include下,lib及dll文件应该放在OPENSSL_CONF/lib下。
那我们随便找一个目录,比如“c:\openssl”,然后将openssl下面的include文件夹拷贝到c:\openssl下,将libeay.lib和libeay.dll拷贝到c:\openssl\lib下。
然后设置环境变量OPENSSL_CONF=c:\openssl\include\ 注意,最后一定要有”\”。
这里吐槽一下他的安装脚本。他有一行代码是这样的:openssl = os.path.dirname(os.path.dirname(openssl_conf)) 这就意味着,如果你不在最后加一个'\',那openssl变量的值就等于'c:\'而不是'c:\openssl',然后他就会认为include文件在'c:\include'下,二进制文件在'c:\lib'下,然后安装就会报错,擦,就不能好好写吗。。。。
或者直接在命令行下执行:
set OPENSSL_CONF=c:\openssl\include\
第二种方式只在当前会话中生效,关了控制台,就不存在了。
设置好环境变量后,我们重新执行:
pip install pysqlcipher
提示:Successfully installed pysqlcipher-2.6.4
大功告成。
- windows下安装pysqlcipher模块
- windows下安装perl模块
- windows下安装perl模块
- windows下安装python模块
- windows下安装python模块
- Windows下Python 模块安装
- windows下安装paramiko模块
- Windows下安装Python模块
- windows下安装cv2模块
- Windows下 安装Python 模块
- 【安装教程】windows下安装setuptools模块
- windows下安装numpy模块的安装
- Windows XP 下安装Perl cpan模块
- windows 下安装 perl 模块手记
- windows 下安装 python 的 mysqldb 模块
- windows下安装python模块解决方案
- windows下Python模块的安装
- Windows下安装php的Memcache模块
- SQLite学习笔记(8)-SQLite编译
- Unique Paths I II
- SQLserver游标原理和使用方法
- Part2. OSGi规范介绍一
- jvm的类加载器
- windows下安装pysqlcipher模块
- Oracle正则表达式使用介绍
- MFC中持久化的实现
- HDU 5056 双指针(也叫窗口滑动(也叫尺取法))
- HDU 5137 How Many Maos Does the Guanxi Worth <迪杰斯特拉算法变形>
- Unity_UNity导出Android工程
- 80元,100元,300元,500元低价出售40个不错的老域名
- 建立TCP连接,实现基本通信
- Accelerated C++ 学习笔记3