无法在Windows机器上安装sasl-0.1.3 Python包
我正在尝试在Windows 7(64位机器)上安装sasl-0.1.3这个Python包。
但是安装失败了,出现了C1083这个致命错误。
看起来saslwrapper.cpp这个文件无法在C++模块中包含sasl/sasl.h这个库。
请帮我解决这个问题。如果需要更多细节,请告诉我。
我在我的机器上安装了Python 2.7。
3 个回答
0
我想给那些使用 pipenv
并希望在Linux和Windows上都能安装包的人一些建议,以下方法对我有效(sasl 0.2.1
):
[packages]
...
sasl = {version = "==0.2.1", markers = "platform_system == 'Linux'"}
sasl_win = {version = "==0.2.1", markers = "platform_system == 'Windows'", file = "https://download.lfd.uci.edu/pythonlibs/g5apjq5m/sasl-0.2.1-cp37-cp37m-win_amd64.whl"}
...
可以查看这个 Github问题上的评论。
7
自动安装方法
为了实现更高的自动化水平,并希望能为其他用户节省时间,下面的方法也适用于自动安装。(如果需要,可以替换成其他的镜像网址。)
pip install https://download.lfd.uci.edu/pythonlibs/g5apjq5m/sasl-0.2.1-cp37-cp37m-win_amd64.whl
另外,请注意文件名中的“cp37”这个文本是很重要的——你需要确保这个文本与你使用的Python版本相匹配。我使用的是Python 3.7,所以是cp37(也叫CPython 3.7)。(这里有更多信息。)
截至本文发布时,可用的版本/平台组合有:
sasl‑0.1.3‑cp27‑none‑win32.whl
sasl‑0.1.3‑cp27‑none‑win_amd64.whl
sasl‑0.2.1‑cp27‑cp27m‑win32.whl
sasl‑0.2.1‑cp27‑cp27m‑win_amd64.whl
sasl‑0.2.1‑cp35‑cp35m‑win32.whl
sasl‑0.2.1‑cp35‑cp35m‑win_amd64.whl
sasl‑0.2.1‑cp36‑cp36m‑win32.whl
sasl‑0.2.1‑cp36‑cp36m‑win_amd64.whl
sasl‑0.2.1‑cp37‑cp37m‑win32.whl
sasl‑0.2.1‑cp37‑cp37m‑win_amd64.
同时自动安装VS C++工具和Sasl。
下面是一个完全自动化的安装方法,包含你所需的一切。
- 从提升权限的命令提示符中安装Choco包管理器(如果你还没有安装的话)。
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
- 安装C++构建工具
choco install microsoft-visual-cpp-build-tools
- 安装Sasl (根据上面的指导自定义网址)
pip install https://download.lfd.uci.edu/pythonlibs/g5apjq5m/sasl-0.2.1-cp37-cp37m-win_amd64.whl
39
在Windows 7上安装sasl最简单的方法就是从这个网站下载预编译的版本:http://www.lfd.uci.edu/~gohlke/pythonlibs/
这里有sasl库的直接链接:http://www.lfd.uci.edu/~gohlke/pythonlibs/#sasl,你只需要选择你需要的版本。
然后你可以用pip来安装它:
pip install sasl-0.1.3-cp27-none-win_amd64.whl