我正在尝试在我的Mac上安装Quantlib-Python(official instructions),但是当我运行make -C Python check
时,我收到错误ImportError: No module named _QuantLib
。当我重新审视安装步骤时,似乎一切正常:
Removing /Library/Python/2.7/site-packages/QuantLib_Python-1.9-py2.7.egg-info
Writing /Library/Python/2.7/site-packages/QuantLib_Python-1.9-py2.7.egg-info
知道出了什么问题吗?
答案 0 :(得分:0)
Python可能无法找到您的动态C ++ QuantLib库。它应该被称为libQuantLib.dylib
,应该是动态加载程序可以找到它的地方;这意味着它应该位于某个标准系统位置,例如/usr/lib
或/usr/local/lib
,或者您应该设置环境变量DYLD_LIBRARY_PATH
,以便它包含其位置。
如果您只想使用QuantLib Python模块,更容易的替代方法可能是回避动态加载。如果清理安装(即,如果删除了可能已安装的任何libQuantLib.*
)并重新构建C ++ QuantLib,请先将其配置为
./configure --disable-shared --enable-static
(以及您可能需要的任何其他标志),当您运行make
时,您将获得一个静态库。当您重建Python包装器时,Python模块将自己嵌入QuantLib代码,而不是依赖于动态库的存在。