【发布时间】:2016-06-14 14:31:06
【问题描述】:
我正在尝试使用以下命令在 Ubuntu 14.04 上安装 netcdf4 包
pip3 安装 netcdf4
这确实安装成功,但是当我尝试执行具有 import netCDF4 的脚本时,我收到以下错误 -
Traceback (most recent call last):
File "display.py", line 5, in <module>
from netCDF4 import Dataset # http://code.google.com/p/netcdf4-python/
File "/usr/local/lib/python3.4/dist-packages/netCDF4/__init__.py", line 3, in <module> from ._netCDF4 import *
File "netCDF4/_netCDF4.pyx", line 942, in init netCDF4._netCDF4 (netCDF4/_netCDF4.c:76006)
File "/usr/local/lib/python3.4/dist-packages/netcdftime/__init__.py", line 1, in <module>
from .netcdftime import utime, JulianDayFromDate, DateFromJulianDay
File "/usr/local/lib/python3.4/dist-packages/netcdftime/netcdftime.py", line 14, in <module>
from ._datetime import datetime
ImportError: /usr/local/lib/python3.4/dist-packages/netcdftime/_datetime.cpython-34m.so: undefined symbol: __intel_sse2_strchr
所以看起来这依赖于 cython 和 hdf5。 我确实安装了 cython,并且安装成功。
当我执行 pip3 install h5py 时,出现以下错误 -
有什么建议吗?我正在使用 Intel icc 编译器,无法切换到 gcc。
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip_build_root/h5py/setup.py", line 149, in <module>
cmdclass = CMDCLASS,
File "/usr/lib/python3.4/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/lib/python3.4/distutils/dist.py", line 955, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.4/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/usr/lib/python3/dist-packages/setuptools/command/install.py", line 53, in run
return _install.run(self)
File "/usr/lib/python3.4/distutils/command/install.py", line 583, in run
self.run_command('build')
File "/usr/lib/python3.4/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.4/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/usr/lib/python3.4/distutils/command/build.py", line 126, in run
self.run_command(cmd_name)
File "/usr/lib/python3.4/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.4/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/tmp/pip_build_root/h5py/setup_build.py", line 147, in run
from Cython.Build import cythonize
File "/usr/local/lib/python3.4/dist-packages/Cython/Build/__init__.py", line 1, in <module>
from .Dependencies import cythonize
File "/usr/local/lib/python3.4/dist-packages/Cython/Build/Dependencies.py", line 50, in <module>
from ..Compiler.Main import Context, CompilationOptions, default_options
File "/usr/local/lib/python3.4/dist-packages/Cython/Compiler/Main.py", line 28, in <module>
from .Scanning import PyrexScanner, FileSourceDescriptor
ImportError/usr/local/lib/python3.4/distpackages/Cython/Compiler/Scanning.cpython-34m.so: undefined symbol: __intel_sse2_strchr
【问题讨论】:
-
你必须使用用icc编译的python。您正在使用 gcc 编译的版本。重新编译python,重新安装模块/w pip。
-
@BadZen - python 是用 icc 编译的。但是如何检查 python 是用什么编译的?
标签: python-3.x installation ubuntu-14.04 icc h5py