繁体   English   中英

在Windows7上为python3安装METIS库

[英]install METIS library for python3 on windows7

我想在Windows7上为python3.6安装METIS,我做了以下步骤:

1-从https://pypi.python.org/pypi/networkx-metis/下载源文件(tar.gz或zip文件)

2-解压缩并将目录更改为源目录(它应该在顶层具有setup.py)。

3,运行

python setup.py build

建立

在这一步中,我遇到了以下错误:

error: Microsoft Visual C++ 14.0 is required.

我安装了“ Visual Studio Tools 2017”,然后再次运行代码。 我遇到以下错误:

error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 
14.0\\VC\\BIN\\cl.exe' failed with exit status 2

如果您回答我的问题,我将不胜感激。

尽管我使用的是Windows 10,但与您在此处列出的步骤相同的步骤也许对您有用。

首先,您应该使用pip获取python metis包装器: pip install metis

其次, 您必须安装conda-metis ,您可以在此处找到。 注意,它不需要您安装Anaconda即可工作。

将文件放在conda-metis-master的某个文件路径中。

安装需要一些修复程序。 确保您拥有最新版本的Visual Studios(我使用的是2017年)。 对我来说,VS在运行BUILD-WINDOWS.txt中的指令时遇到了问题,这使我陷入了这个线程:

为什么MSBuild在C:\\中查找Microsoft.Cpp.Default.props而不是c:\\ Program Files(x86)\\ MSBuild? (错误MSB4019)

具体来说,我对Windows 10上的Visual Studio 2017和2019的回答是我想要的。 由于您使用的是Windows 7,因此可能对您而言有所不同。

对于python metis包,我们需要生成一个metis.dll而不是metis.lib文件,因此我们还必须仔细查看CMakeLists.txt (请参阅此处的Linux版本)。 我们在第19行添加: set(METIS_LIBRARY_TYPE SHARED)

您应该按照BUILD-WINDOWS.txt的说明进行操作,但要在命令提示符下的conda-metis文件路径中以完全权限运行.\\vsgen -G "Visual Studio 15 2017 Win64" ,而不要使用Visual Studio 10。

在继续使用path_to_your_metis_dir\\build\\windows\\的上述命令生成的文件之前,我们需要另一项修复。 遵循以下内容:

使用CMake创建VS Project后出现rint()问题

我们必须通过删除以下行来编辑文件path_to_your_metis_dir\\GKlib\\gk_arch.h#define rint(x) ((idx_t)((x)+0.5)) (或者此github交流上列出的修复程序。)

然后转到path_to_your_metis_dir\\build\\windows\\

在Visual Studios中打开METIS.sln ,转到顶部进行Build然后从向下滚动至Build Solution 之后, .dll文件将位于path_to_your_metis_dir\\build\\windows\\libmetis\\Release\\

最后,我们在命令提示符下运行: set METIS_DLL=path_to_your_metis_dir\\build\\windows\\libmetis\\Release\\metis.dll

此后,当我from metis import *的步骤将其导入到我的代码中时,python metis不再失败。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM