我想在家里 Build 一个Jupyter笔记本服务器 . 它花了我很长时间,但我已经成功构建并安装了Python 3.4和FreeBSD端口所需的所有软件包 . 笔记本服务器启动并正常运行,每次我尝试导入numpy时除外:
In[1]: import numpy
发生以下错误:
ImportError Traceback (most recent call last)
<ipython-input-1-5a0bd626bb1d> in <module>()
----> 1 import numpy
/usr/local/lib/python3.4/site-packages/numpy/__init__.py in <module>()
178 return loader(*packages, **options)
179
--> 180 from . import add_newdocs
181 __all__ = ['add_newdocs',
182 'ModuleDeprecationWarning',
/usr/local/lib/python3.4/site-packages/numpy/add_newdocs.py in <module>()
11 from __future__ import division, absolute_import, print_function
12
---> 13 from numpy.lib import add_newdoc
14
15 ###############################################################################
/usr/local/lib/python3.4/site-packages/numpy/lib/__init__.py in <module>()
6 from numpy.version import version as __version__
7
----> 8 from .type_check import *
9 from .index_tricks import *
10 from .function_base import *
/usr/local/lib/python3.4/site-packages/numpy/lib/type_check.py in <module>()
9 'common_type']
10
---> 11 import numpy.core.numeric as _nx
12 from numpy.core.numeric import asarray, asanyarray, array, isnan, \
13 obj2sctype, zeros
/usr/local/lib/python3.4/site-packages/numpy/core/__init__.py in <module>()
12 os.environ[envkey] = '1'
13 env_added.append(envkey)
---> 14 from . import multiarray
15 for envkey in env_added:
16 del os.environ[envkey]
ImportError: /lib/libgcc_s.so.1: version GCC_4.6.0 required by /usr/local/lib/gcc48/libgfortran.so.3 not found
导入pandas和matplotlib的错误消息不同,但我怀疑这与这个numpy导入错误有关 .
奇怪的是,所有3个软件包在Python和IPython控制台上运行良好,完全没有问题!我用Google搜索并做了以下尝试:
delete and reinstall numpy -> no change
append numpy directory to sys.path -> no change
install a lot of other external packages just to see if it's only related to numpy -> they are all working fine in both consoles and notebook, except scipy giving some error related to numpy
谢谢您的帮助!
2 回答
我的gcc是版本4.2.1 . 我已通过将LD_LBRARY_PATH设置为/ usr / local / lib / gcc48来解决此问题 . gcc48已安装在我的系统中 . 为了避免每次都设置路径,我在/.cshrc中添加了以下行:
edit: 这不起作用您想通过添加到crontab自动启动笔记本服务器:
尝试根据numpy导入numpy和模块时出现相同的错误
我通过制作/ usr / local / bin / jupyter-notebook的副本来修复此问题并添加以下行:
将新文件添加到crontab而不是jupyter-notebook .
问题不在于你的python模块 . 底部的错误消息,其中显示
ImportError: /lib/libgcc_s.so.1: version GCC_4.6.0 required by /usr/local/lib/gcc48/libgfortran.so.3 not found
表示它是Fortran库的依赖性错误 . 显然它需要gcc 4.6或更高版本,显然你安装了较低版本 . 不熟悉Python库或您的设置,我的猜测是它可能是/usr/ports/devel/py-fortran
的问题 . 我建议使用gcc -v
检查机器上的gcc版本,以及使用pkg info
安装的任何与fortran相关的端口,然后从那里取出 .