为 python hmmlearn 包编译 C 代码时出错
Error compiling C code for python hmmlearn package
我在正确安装 hmmlearn
包时遇到了一些问题(在虚拟环境中);它似乎与底层 C 代码有关。使用 pip
可以很好地安装软件包,但是当我尝试导入核心 class 时,出现错误:
In [1]: import hmmlearn
In [2]: from hmmlearn import hmm
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-2-8b8c029fb053> in <module>()
----> 1 from hmmlearn import hmm
/export/hdi3/home/krono/envs/sd/lib/python2.7/site-packages/hmmlearn/hmm.py in <module>()
19 from sklearn.utils import check_random_state
20
---> 21 from .base import _BaseHMM
22 from .utils import iter_from_X_lengths, normalize
23
/export/hdi3/home/krono/envs/sd/lib/python2.7/site-packages/hmmlearn/base.py in <module>()
11 from sklearn.utils.validation import check_is_fitted
12
---> 13 from . import _hmmc
14 from .utils import normalize, log_normalize, iter_from_X_lengths
15
ImportError: /export/hdi3/home/krono/envs/sd/lib/python2.7/site-packages/hmmlearn/_hmmc.so: undefined symbol: npy_expl
我一直在阅读关于 SO 的其他问题,这些问题似乎可以解决这个问题,但是 (使用 Anaconda)将不起作用,因为 hmmlearn
不包括在内。答案似乎与编译 C 代码有关,但我不确定如何去做。任何帮助将不胜感激!
我 运行 不久前遇到了同样的问题,并通过尝试一切可能找到了 。无论出于何种原因,在某些情况下 pip
会在将包保存到缓存目录时跳过构建 C 扩展。如果你强制 pip
忽略缓存,它总是从头开始构建包,所以解决方案是首先卸载包然后 运行 pip install --no-cache-dir <package>
我在正确安装 hmmlearn
包时遇到了一些问题(在虚拟环境中);它似乎与底层 C 代码有关。使用 pip
可以很好地安装软件包,但是当我尝试导入核心 class 时,出现错误:
In [1]: import hmmlearn
In [2]: from hmmlearn import hmm
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-2-8b8c029fb053> in <module>()
----> 1 from hmmlearn import hmm
/export/hdi3/home/krono/envs/sd/lib/python2.7/site-packages/hmmlearn/hmm.py in <module>()
19 from sklearn.utils import check_random_state
20
---> 21 from .base import _BaseHMM
22 from .utils import iter_from_X_lengths, normalize
23
/export/hdi3/home/krono/envs/sd/lib/python2.7/site-packages/hmmlearn/base.py in <module>()
11 from sklearn.utils.validation import check_is_fitted
12
---> 13 from . import _hmmc
14 from .utils import normalize, log_normalize, iter_from_X_lengths
15
ImportError: /export/hdi3/home/krono/envs/sd/lib/python2.7/site-packages/hmmlearn/_hmmc.so: undefined symbol: npy_expl
我一直在阅读关于 SO 的其他问题,这些问题似乎可以解决这个问题,但是 hmmlearn
不包括在内。答案似乎与编译 C 代码有关,但我不确定如何去做。任何帮助将不胜感激!
我 运行 不久前遇到了同样的问题,并通过尝试一切可能找到了 pip
会在将包保存到缓存目录时跳过构建 C 扩展。如果你强制 pip
忽略缓存,它总是从头开始构建包,所以解决方案是首先卸载包然后 运行 pip install --no-cache-dir <package>