Command “python setup.py egg_info” failed with error code 1 with table package
由于某些原因,我试图安装特定版本的python软件包tables==2.4.0。 但是每次我得到错误
Command"python setup.py egg_info" failed with error code 1 in /tmp/pip-install-tJYQ8o/tables/。
如果我尝试使用pip install tables,则可以正常工作,并且将安装版本3.4.3的表程序包。 但是我特别需要2.4.0或2.x。
我也检查过
https://stackoverflow.com/questions/44981793/python-setup-py-egg-info-failed-with-error-code-1
和
https://stackoverflow.com/questions/35991403/pip-install-returns-python-setup-py-egg-info-failed-with-error-code-1
但是没有成功。我也尝试了virtualenv,这个版本也出现了同样的错误,最新版本运行良好。我在Ubuntu 14.04中将virtualenv用于python版本2.7.12。 有人可以建议我解决这个问题吗?
谢谢。
-
"点列表"产生什么输出?
-
@srk:pip list的输出是Cython 0.28.2 ez-setup 0.9 numpy 1.14.3 pip 10.0.1 pysam 0.8.0 setuptools 39.1.0 wheel 0.31.1
-
当我尝试安装表2.4.0时,我发现表不喜欢numpy(1.14.3)上的该版本,即使1.14.3更高,它也想要1.4.1或更高版本! 也许您可以卸载numpy 1.14并安装较早的版本(如1.9.0),以诱使表格认为它具有较新的版本。
我认为问题在于您要安装的表的版本(2.4.0)与您已安装的numpy的版本不兼容。 该不兼容是由于表包随附的setup.py中的错误所致。
请参阅以下错误报告https://github.com/PyTables/PyTables/issues/601
报告该错误的人员在此处提供了补丁:https://gist.github.com/prehensilecode/2eb790476c38299e520ce5ea40896e08
为了自己解决此问题,我下载了2.4.0表格包(pip download tables==2.4.0)并将修补程序应用于setup.py
我确保已安装表依赖项(numpy,numexpr和cython),并且还需要确保安装必要的HDF5文件(sudo apt install libhdf5-serial-dev),然后运行:
1
| sudo python setup.py install --hdf5=/usr/lib/i386-linux-gnu/hdf5/serial/ |
当然,HDF5文件的路径可能与我的不同。
然后从python提示符import tables
-
抱歉迟了回应。一切都很好。已安装Tables == 2.4.0,但是现在的问题是它没有显示在pip列表中,并且我无法导入此软件包。输出为:running install running build running build_py running build_ext running build_scripts running install_lib running install_scripts changing mode of usrlocalbinptdump to 755 changing mode of usrlocalbinptrepack to 755 changing mode of usrlocalbinnctoh5 to 755 running install_egg_info Writing usrlocallibpython2.7dist-packagestables-2.4.0.egg-info
-
上面显示的输出是我重新安装它以确认此软件包正确安装时的结果。 pip freeze的输出未显示此程序包,我想知道为什么这里一切都完美。谢谢。
-
尝试导入表时会遇到什么错误?
-
:Traceback (most recent call last):`file" ",<模块>中的第1行,`from table.utilsExtension import getPyTablesVersion,`getHDF5Version中的``中的文件" tables / __ init__.py",第30行。 ImportError: No module named utilsExtension
-
进行导入时,请确保未在其中包含表setup.py文件的目录中看到github.com/PyTables/PyTables/issues/395
-
再次抱歉打扰您。我上次误解了该安装程序是否正确完成,但没有成功。出现的实际错误是ERROR:: Could not find a local HDF5 installation.,但是我已经检查并确认您提到的命令(sudo apt install libhdf5-serial-dev)正确安装了hdf5。再次提出任何建议。
-
好的,您知道您的HDF5库在哪里吗?我的可能在/ usr / lib / i386-linux-gnu / hdf5 / serial /中,如果您使用的是64位版本的linux,则它肯定会在其他位置。一旦知道了这些文件的位置,就需要告诉setup.py在哪里找到它,这就是为什么需要使用--hdf5参数来运行的原因:sudo setup.py install --hdf5 =
-
是。我发现存在hdf5文件的两个地方。一个是/ use / lib / x86_64_linux-gnu / hdf5 / serial,其中所有lub文件都存在,另一个是/ use / include / hdf5 / serial,其中所有.h和.mod文件都存在。我尝试了两个地址。第二个绝对是行不通的,正确的放在这里。因此,使用第一个库时,会再次显示本地安装不存在错误。谢谢。
-
在前面的注释中编辑:第二个命令中的地址不正确。