RedHat 上的 Scipy 和 Scikit-learn 中未定义的符号

2023-12-22

我正在尝试在没有 root 权限的 64 位 Red Hat Enterprise 6.6 服务器上安装 Scikit-Learn。我已经全新安装了 Python 2.7.9、Numpy 1.9.2、Scipy 0.15.1 和 Scikit-Learn 0.16.1。服务器上安装的 Atlas BLAS 版本为 3.8.4。

我可以安装 scikit-learn,但是当我尝试在 Python 中导入它时,我得到

File "<pyinstall>/site-packages/scipy/parse/linalg/isolve/_iterative.so: undefined symbol: slamch_"

同样,当我跑步时

>>> import scipy; scipy.test()

我收到 16 个错误,其中 14 个为以下未定义符号的 ImportErrors:

  • scipy/cluster/_vq.so: undefined symbol _gfortran_st_write_done
  • scipy/special/_ufuncs.so: undefined symbol dstevr_
  • scipy/linalg/_fblas.so: undefined symbol csyr_
  • scipy/lib/blas/fblas.so: undefined symbol slamch_
  • scipy/lib/lapack/flapack.so: undefined symbol sgbsv_
  • scipy/spatial/qhull.so: undefined symbol _gfortran_st_write_done

我的研究我发现的几个来源表明,出现此类问题的原因是编译 BLAS/LAPack 库和 scipy 时的 Fortran 编译器不匹配,例如这个邮件交换 http://mail.scipy.org/pipermail/scipy-user/2009-January/019411.html另一个来自 2007 年(未链接,因为我的声誉不够高,无法包含另一个链接;它引用了 _gfortran_st_write_done 符号)。然而,BLAS 构建是在仅安装了 gfortran 的服务器上完成的(没有 g77 或 Intel 编译器),并且我重新编译了 scipy 以显式使用 gfortran。

scipy安装说明中还提到Atlas BLAS自带的LAPACK版本并不是完整的实现,并表示如果安装的LAPACK缺少某些功能可能会出现ImportErrors。所以,我按照说明进行操作here http://math-atlas.sourceforge.net/errata3.8.4.html#completelp安装 LAPACK 3.5.0 的完整版本,也是用 gfortran 编译的。然后我重新编译 scipy 和 sklearn 指向更新的库,并收到相同的导入错误。

我的问题除了不匹配的 Fortran 编译器之外,还有什么可能导致这些错误吗?或者,是否还有另一个库需要重新编译?


谢谢安德烈亚斯·穆勒 https://stackoverflow.com/users/676634/andreas-mueller提示:进行本地安装anaconda http://docs.continuum.io/anaconda/index.html到我拥有的目录解决了编译问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

RedHat 上的 Scipy 和 Scikit-learn 中未定义的符号 的相关文章

随机推荐

  • TSQL 从日期时间中剥离日期

    最好的脱毛方法是什么date从 DATETIME 开始 所以仅time还剩下来做比较吗 我知道我可以执行以下操作 CONVERT DATETIME CONVERT VARCHAR 8 GETDATE 8 但这涉及到转换和字符 如果我想检查某
  • android 使用 Renderscript 实现模糊效果崩溃导致 A/libc:致命信号 7 (SIGBUS),代码 2,故障地址 0x9e6fa000 in tid 482 (AsyncTask #1)

    我使用模糊效果 同时应用于从资源加载的位图 它按预期工作 同时使用通用图像加载器下载图像并应用于位图 它会导致 A libc 致命信号 7 SIGBUS 代码 2 tid 31955 中的故障地址 0x9d56e000 AsyncTask
  • 在 Laravel 4 中使用命名空间

    我是 Laravel 的新手 并且通常使用 PHP 命名空间 在我决定制作一个名为 File 的模型之前 我没有遇到任何问题 我将如何正确地进行命名空间以便我可以使用我的文件模型类 这些文件是app controllers FilesCon
  • 反向 mysql_real_escape_string

    我有一段很大的数据 可能包含引号和双引号 我在用着mysql real escape string 安全存放 当我把它拿出来查看时 所有引号都被转义了 我尝试使用str replace去掉所有的引号 但这变成了 r n s into rn
  • 如何重用带有参数的 LINQ Select 表达式

    我编写了一个 LINQ 查询 并为 Select 子句创建了一个表达式来重用它 我的查询看起来像这样 DataContext Single Select SearchSelector ToList 其中搜索选择器定义为 private Ex
  • 我们可以在没有 main() 方法的情况下执行 java 程序吗? [复制]

    这个问题在这里已经有答案了 据我所知 如果没有 main 方法 我们就无法执行 因为当你运行 java 程序时 java 虚拟机查找 main 方法 如果 JVM 找不到 main 方法 它将显示运行时错误 Exception in thr
  • JavaScript 数组是 NaN? AngularJS ng模型

    我想看看 ngModel 的价值是什么 directive myDir function return require ngModel link function scope elm attr ngModel if ngModel retu
  • @ControllerAdvice 异常处理程序方法未被调用

    我正在为 Spring MVC 中的异常处理开发示例演示应用程序 我正在尝试Exception Handling With ControllerAdvice 我按照中描述的步骤操作this http www baeldung com 201
  • .change() 和 .on("change") 之间有区别吗? [复制]

    这个问题在这里已经有答案了 之间有什么区别 selector change function and selector on change function 如果有的话 在大多数情况下我应该使用哪一个 内部没啥区别change函数会使用 o
  • 如何在导出的pdf中显示印地语字体?

    我正在尝试显示印地语字体在使用生成的pdf文件中iReport 我在中添加了印地语 ttf 字体iReport对于相同的 iReport工具正在正确显示印地语字体iReport查看器 但是当我将其导出到 pdf 文件时 我没有在 pdf 文
  • 确定文件是否为空的最佳方法(php)?

    我在模板中包含了一个 custom css 文件 以允许网站所有者添加自己的 CSS 规则 但是 当我发送文件时 它是空的 如果他们没有向其中添加任何规则 则加载它是没有意义的 确定其是否为空的最佳方法是什么 if 0 filesize f
  • Android 中的对话框被关闭或取消有什么区别?

    正如标题所说 Android 中对话框被关闭或取消有什么区别 通常 当对话框的工作完成并从屏幕上删除时 对话框就会被关闭 当用户想要退出对话框并按 后退 按钮时 对话框将被取消 例如 屏幕上有一个标准的是 否对话框 如果用户单击 否 则对话
  • 无法在react router dom中使用Link传递道具

    using this to pass props over Watch page but can t get any value 我是新手 所以可能会出现愚蠢的错误或信息不足 请让我知道任何额外信息 如果您正在使用react router
  • ostrstream 将常量字符串解释为指针

    我在清理旧 C C 应用程序的调试宏时遇到了这个问题 我们有一个继承自的 Tracer 类ostrstream 我知道自 C 98 以来它已被弃用 但这个应用程序是在 1998 年编写的 我们这样使用它 Tracer lt lt some
  • 如何从 matplotlib 将时间控制面板添加到 FuncAnimation

    我目前正在使用matplotlib animation FuncAnimation http matplotlib org api animation api html matplotlib animation FuncAnimation在
  • 注销后实时数据库onDisconnect不执行

    我已经实现了 Firebase 实时数据库存在系统 如官方 Firebase 文档中所示 我希望确保数据库安全 以便登录用户只能写入数据库中自己的存在条目 因此 在登录时 用户写入参考路径 auth authId connections并同
  • 图表不会显示数据点

    我正在尝试做一个Chart使用字典中的值但是我的Chart不显示任何内容 我的代码运行良好 没有错误 并且表单上有一个图表 我以前从未用 C 制作过图表 所以我不知道我在做什么 这是我的填充代码 如果我删除StatChart update
  • 更改JIT编译的最终值

    我注意到一件非常奇怪的事情 在通过反射更改最终字段后 返回该字段的方法始终给出旧值 我想这可能是因为 JIT 编译器 这是示例程序 public class Main private static final Main m new Main
  • 无法以编程方式启动 Windows Azure VM

    我正在执行 REST API 操作开始角色 http msdn microsoft com en us library jj157189 aspx 在链接中https management core windows net subscrip
  • RedHat 上的 Scipy 和 Scikit-learn 中未定义的符号

    我正在尝试在没有 root 权限的 64 位 Red Hat Enterprise 6 6 服务器上安装 Scikit Learn 我已经全新安装了 Python 2 7 9 Numpy 1 9 2 Scipy 0 15 1 和 Sciki