Я скачал с github и Quantlib-SWIG 1.12.x, и Quantlib 1.12.x. Quantlib компилируется без проблем. Примеры работали нормально. Однако при запуске python setup.py build
, есть ошибка, указывающая на отсутствие quantlib_wrap.cpp
, Где правильно скачать quantlib_wrap.cpp
для этой версии или эта ошибка связана с чем-то другим? Вот сообщения, которые я получил от этой сборки.
C:\Users\Public\3rdParty\Libraries\QuantLib-SWIG-1.12.x\Python>python setup.py build
running build
running build_py
file QuantLib\QuantLib.py (for module QuantLib.QuantLib) not found
file QuantLib\QuantLib.py (for module QuantLib.QuantLib) not found
running build_ext
building 'QuantLib._QuantLib' extension
C:\Users\U435169\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -D__WIN32__ -DWIN32 -DNDEBUG -D_WINDOWS -DNOMINMAX -Id:\packages\Python27\include -Id:\packages\Python27\PC -IC:\Users\Public\3rdParty\Libraries\QuantLib-master /TpQuantLib/quantlib_wrap.cpp /Fobuild\temp.win32-2.7\Release\QuantLib/quantlib_wrap.obj /GR /FD /Zm250 /EHsc /bigobj /MD
quantlib_wrap.cpp
c1xx : fatal error C1083: Cannot open source file: 'QuantLib/quantlib_wrap.cpp': No such file or directory
error: command 'C:\\Users\\U435169\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\cl.exe' failed with exit status 2
quantlib_wrap.cpp
генерируется SWIG с использованием источников в хранилище. Если у вас установлен SWIG, вы можете сгенерировать его (см. https://www.quantlib.org/install/windows-python.shtml); но если у вас нет планов по изменению источников, я предлагаю вам также:
вместо клонирования репозитория с GitHub загрузите официальный релиз (см. https://www.quantlib.org/download.shtml); выпущенные источники включают quantlib_wrap.cpp
;
или еще лучше, как предложено на странице установки, указанной выше, попробуйте запустить
pip install QuantLib-Python
чтобы увидеть, доступен ли предварительно скомпилированный модуль Python из PyPI. Если это удастся, вы будете настроены без необходимости компилировать вещи самостоятельно.
Других решений пока нет …