Я пытаюсь установить библиотеку GSL в Windows, чтобы в конечном итоге запустить этот проект: https://github.com/paulohubert/bayeseg.
Однако я продолжаю сталкиваться с ошибкой Cannot open include file: 'gsl/gsl_mode.h': No such file or directory
Я попытался загрузить библиотеку GSL, упомянутую в github, и установить LIB_GSL в местоположение, а также добавить ее в свой путь перед установкой cythongsl, как упоминалось в предыдущем ответе (CythonGSL/ Использование GSL в Windows через Cython). Я также пытался загрузить GSL из cygwin и https://code.google.com/p/oscats/downloads/list безрезультатно.
Примечание 1. Когда я пытаюсь собрать и установить cythonGSL (сборка python setup.py), я получаю следующие предупреждения: C:\toolkits\Anaconda3\lib\distutils\dist.py:274: UserWarning: Unknown distribution option: 'setup_requires'
warnings.warn(msg)
C:\toolkits\Anaconda3\lib\distutils\dist.py:274: UserWarning: Unknown distribution option: 'install_requires'
warnings.warn(msg)
,
и когда я пытаюсь установить юнит-тесты, я получаю ту же ошибку No such file or directory
, с которой я начал.
Примечание 2: кажется, что cythongsl интегрирован в anaconda, поскольку pip не позволяет мне удалить/переустановить его. Может ли это указывать на неправильный каталог GSL здесь?
Я пытаюсь это сделать с anaconda 3.7.6 на компьютере с Windows 10.
Шаги, предпринятые для установки gsl:
1) Я устанавливаю MSYS2 с MinGW-w64
2) Я обновляю MYSYS2 с помощью "pacman -Su" и обновляю MinGW с помощью "pacman -Syu git make mingw-w64-x86_64-{gcc,cmake,icu,jemalloc,zlib} эм>"
3) Скачиваю последний gsl и распаковываю его в директорию MSYS с помощью следующих команд в оболочке MSYS-mingw64:
$wget ftp://ftp.gnu.org/gnu/gsl/gsl-latest.tar.gz
$mv gsl-latest.tar.gz ~/
$cd
$tar -zxvf gsl-latest.tar.gz
$cd ~/gsl-2.6
$./configure
$make
$make check
$make install
Проверка проверки завершается ошибкой со следующей ошибкой: Содержимое spmatrix/test-suite.log:
======================================
gsl 2.6: spmatrix/test-suite.log
======================================
# TOTAL: 1
# PASS: 0
# SKIP: 0
# XFAIL: 0
# FAIL: 1
# XPASS: 0
# ERROR: 0
.. contents:: :depth: 2
FAIL: test
==========
FAIL: gsl_spmatrix_long_double_fscanf[53,107](COO) [289]
FAIL: gsl_spmatrix_long_double_fscanf[53,107](CSC) [290]
FAIL: gsl_spmatrix_long_double_fscanf[53,107](CSR) [291]
FAIL: gsl_spmatrix_complex_long_double_fscanf[53,107](COO) [1313]
FAIL: gsl_spmatrix_complex_long_double_fscanf[53,107](CSC) [1314]
FAIL: gsl_spmatrix_complex_long_double_fscanf[53,107](CSR) [1315]
FAIL: gsl_spmatrix_long_double_fscanf[40,20](COO) [1607]
FAIL: gsl_spmatrix_long_double_fscanf[40,20](CSC) [1608]
FAIL: gsl_spmatrix_long_double_fscanf[40,20](CSR) [1609]
FAIL: gsl_spmatrix_complex_long_double_fscanf[40,20](COO) [2631]
FAIL: gsl_spmatrix_complex_long_double_fscanf[40,20](CSC) [2632]
FAIL: gsl_spmatrix_complex_long_double_fscanf[40,20](CSR) [2633]
FAIL: gsl_spmatrix_long_double_fscanf[30,30](COO) [2925]
FAIL: gsl_spmatrix_long_double_fscanf[30,30](CSC) [2926]
FAIL: gsl_spmatrix_long_double_fscanf[30,30](CSR) [2927]
FAIL: gsl_spmatrix_complex_long_double_fscanf[30,30](COO) [3949]
FAIL: gsl_spmatrix_complex_long_double_fscanf[30,30](CSC) [3950]
FAIL: gsl_spmatrix_complex_long_double_fscanf[30,30](CSR) [3951]
Однако я нахожу здесь, что с Mingw/MSYS некоторые операции с плавающей запятой сообщалось о проблемах, вызывающих сбои в каталоге monte/test., поэтому я предполагаю, что это просто тестовая ошибка.
4) Я нахожу файлы заголовков, установленные в C:\msys64\mingw64\include\gsl, поэтому добавляю их в путь
5) Я также добавляю переменную среды LIB_GSL, указывающую на каталог проекта C:\msys64\mingw64\include (для cythongsl).
6) В клоне CythonGSL и перейдите туда в приглашении anaconda.
7) Следуя руководству по установке, я запускаю
python setup.py build
python setup.py install
8) я пытаюсь собрать unittest с помощью python setup_test.py build
, но получаю ошибку Cannot open include file: 'gsl/gsl_mode.h': No such file or directory
9) Та же ошибка возникает при попытке использовать gsl для установки https://github.com/paulohubert/bayeseg. а>.
test-suite.log
для получения подробной информации о неудачном тесте. Вы также можете запуститьmake -i check
, чтобы запустить все тесты и не останавливаться при первой ошибке. - person matzeri   schedule 24.04.2020make -i check
, я увидел, что на более позднем этапе произошел сбой, потому что отсутствовал cmp, поэтому я исправил это, установив diffutils (pacman -S diffutils
). Однако spmatrix по-прежнему дает сбой, и я не вижу из журнала набора тестов, что вызывает сбой. Журнал testsuite вставлен под ошибкой - person Søren Jensen   schedule 25.04.2020