ValueError:找不到符号表

时间:2014-04-14 07:19:17

标签: numpy scikit-learn

我试图安装scikit-learn;在instructions之后,我下载了源代码并尝试使用python setup.py install安装它,但是安装在以下位置中断:

 File "C:\Users\Alpine\Anaconda\lib\site-packages\numpy\distutils\mingw32ccompi
ler.py", line 278, in generate_def
    raise ValueError("Symbol table not found")
ValueError: Symbol table not found

我也尝试过使用easy_install -U scikit-learn,但最终会遇到同样的错误。

使用conda install scikit-learn似乎安装了conda-3.4.1-py27_0.tar.bz2和numpy-1.8.1-py27_0.tar.bz2软件包,为了安全起见,我运行了conda update anaconda,虽然我仍然收到同样的错误。

有人知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

此解决方案将处理"未找到符号表"来自Windows机器上的numpy(或任何其他包)的错误

sklearn人为此提供了很好的解决方案

http://scikit-learn.org/stable/developers/advanced_installation.html#building-on-windows

你可以在同一页面找到Linux和mac的说明

现在只需按照以下步骤操作

32位Python

对于32位python,可以使用用于Python 2的microsoft visual c ++ express 2008或用于Python 3的Microsoft Visual C ++ Express 2010的独立安装程序。 安装完成后,您应该能够通过在scikit-learn文件夹中运行以下命令来构建没有任何特定配置的scikit-learn: python setup.py安装 64位Python

对于64位体系结构,您需要完整的Visual Studio或可从以下链接下载的免费Windows SDK。

Windows SDK包括适用于32位和64位架构的MSVC编译器。它们作为GRMSDKX_EN_DVD.iso文件提供,可以作为新驱动器安装,其中包含setup.exe安装程序。

**对于Python 2,您需要SDK v7.0:用于Windows 7的MS Windows SDK和.NET Framework 3.5 SP1 - > https://www.microsoft.com/en-us/download/details.aspx?id=18950

对于Python 3,您需要SDK v7.1:用于Windows 7的MS Windows SDK和.NET Framework 4 ** - > (因为我需要至少10个声望点,所以不能发布链接) 两个SDK都可以在同一主机上并行安装。要使用Windows SDK,您需要设置使用以下标志启动的cmd控制台的环境(至少对于SDK v7.0):

cmd / E:ON / V:ON / K 然后使用以下命令配置构建环境:

SET DISTUTILS_USE_SDK = 1 SET MSSdk = 1 " C:\ Program Files \ Microsoft SDKs \ Windows \ v7.0 \ Setup \ WindowsSdkVer.exe" -q -version:v7.0 " C:\ Program Files \ Microsoft SDKs \ Windows \ v7.0 \ Bin \ SetEnv.cmd" / x64 / release

在cmd中输入上面的命令后,一旦你点击进入窗口就会改变lil位(字体颜色变为绿色)现在转到你从git hub下载sklearn zip文件然后解压缩它的目录
   并转到您可以找到setup.py的目录 运行命令

python setup.py install

如果它没有识别python那么你就错过了这个命令 cmd / E:ON / V:ON / K

所以到目前为止如果你已经完成了所有事情,那么你的包装将毫无困难地安装