在 pymatbridge 的 0.3 版本中,为 ZMQ 添加了一个额外的依赖项。因此,要安装此版本,您可能需要编译链接到 zeromq 的 dll 的 messenger
mex 扩展。然而,事实证明在某些情况下这很难做到。
有没有人有在运行 Windows 的机器上从源代码安装 pymatbridge 的成功案例?
最佳答案
这是我的设置和构建说明;为冗长道歉——这是我为我的实验室笔记本所做的一篇文章。
规范:
Windows 8.1 (64 bit)
Anaconda 1.9.1
python 2.7.6
MinGW
TDM GCC 4.8.1
首先我安装了 MS Visual C++ & SDK 7.1
。安装很早就失败的可能原因是存在其他 Visual C++ 编译器版本和/或 SDK——在成功安装 SDK 7.1 之前,我不得不卸载其中的很多。
首先,使用 Windows SDK 7.1 命令提示符
,我
mex -setup
并选择了新安装的编译器。就我而言
Select a compiler:
[1] Microsoft Software Development Kit (SDK) 7.1 in
C:\Program Files (x86)\Microsoft Visual Studio 10.0
[0] None
Compiler:
我选择选择数字 1
。
接下来,我下载并安装了预构建的 64 位 ZMQ 3.2.4
,并从 ZMQ 3.2.4 安装位置 C:\Program Files\ZeroMQ 3.2.4\lib
,我从 C:\Program Files\ZeroMQ 3.2.4\bin
到 messenger 构建目录,~\python-matlab-bridge\messenger\src
。
我还将 zmq.h
和 zmq_utils.h
放入该目录,但截至目前我不确定它们是否真的有必要。
然后,在 Windows SDK 7.1 命令提示符
中,我 cd 到 messenger\src
目录并发出
mex messenger.c libzmq-v90-mt-3_2_4.lib -O -output messenger
获取messenger.mexw64
。
最后,在 ~\python-matlab-bridge 目录
中,使用 MinGW
,我只是
python setup.py install
这会自动将构建的包连同一个鸡蛋信息放入我的 Anaconda\Lib\site-packages
中。在 Anaconda\Lib\site-packages\pymatbridge\matlab
中有之前构建的 messenger.mexw64
-- 来自 ~\python-matlab-bridge\信使\源
。
我还将所有其他 .dll
、.lib
和 复制到
是很好的衡量标准。
现在,在 Anaconda\Lib\site-packages\pymatbridge\matlab
。 hiPython 2.7 控制台
或 iPython Notebook 中,我可以
%load_ext pymatbridge
成功了。
关于python - 在 Windows 上安装 pymatbridge,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23716426/