【问题标题】:scipy missing libifport.so.5scipy 缺少 libifport.so.5
【发布时间】:2012-06-26 16:23:30
【问题描述】:

我正在尝试使用 pip 在 Ubuntu 10.10 上安装 scipy 0.10.1。

我已经成功安装了numpy:

$ sudo pip install --upgrade numpy
[snip]
Successfully installed numpy
Cleaning up...

但是当我尝试 scipy 时,我得到:

$ sudo pip install --upgrade scipy
  [snip]
    File "/usr/local/lib/python2.6/dist-packages/numpy/linalg/linalg.py", line 23, in <module>
      from numpy.linalg import lapack_lite
ImportError: libifport.so.5: cannot open shared object file: No such file or directory

我确实有 libifport.so.5,但我不知道为什么安装程序找不到它。

$ echo $LD_LIBRARY_PATH
  :/opt/intel/composerxe-2011.2.137/compiler/lib/intel64

我还尝试安装其他几个软件包,希望其中一个可能有所帮助(例如 libatlas-base-dev liblapack-dev libatlas-base-dev liblapack-dev 等)

有什么想法吗?

谢谢。

【问题讨论】:

  • 听起来您可能正在混合 gcc-build lapack 构建和 intel-fortran-built lapack 构建? (我根据您的LD_LIBRARY_PATH 猜测。我很可能完全错了。)如果是这种情况,您需要指定 scipy 应该使用的 fortran 编译器(请参阅@987654326 的--fcompiler 选项@)。但是,您不能混合和匹配使用 gcc 的 fortran 和 intel 的 fortran 构建的库。
  • 感谢您的回复。我想避免混合库。您是否碰巧知道包含相关库的软件包?我尝试定位 libifport.so.5,但唯一的命中来自使用 ifort 构建的程序(我猜)。

标签: scipy pip


【解决方案1】:

很可能您还没有为 root 定义 LD_LIBRARY_PATH。要检查这一点:

$须藤苏

$echo $LD_LIBRARY_PATH

您可以按如下方式指定环境变量:

$sudo env LD_LIBRARY_PATH=path/to/compiler' pip install scipy

查看此博客文章以创建别名以节省您每次输入的时间: http://final-world-domination.blogspot.ch/2011/02/sudo-doesnt-export-ldlibrarypath.html

【讨论】:

    【解决方案2】:

    这解决了我在 Debian 9 上的问题: conda install -c intel -c conda-forge -c pytorch --override-channels intel-fortran-rt

    # find / -iname "libifport*"
    ./opt/conda/lib/libifport.so
    ./opt/conda/lib/libifport.so.5
    ./opt/conda/pkgs/intel-fortran-rt-2021.3.0-intel_3350/lib/libifport.so
    ./opt/conda/pkgs/intel-fortran-rt-2021.3.0-intel_3350/lib/libifport.so.5
    

    【讨论】:

      猜你喜欢
      • 2023-03-14
      • 1970-01-01
      • 2021-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-15
      • 2016-04-06
      • 2013-10-19
      相关资源
      最近更新 更多