libnumpy-py3-devel не работоспособен, если пакет libnumpy-devel отсутствует. Пакеты на python-3, которым требуется numpy, не могут быть собраны, если numpy для python-2 не присутствует в момент сборки в дополнение к версии для python-3. Воспроизведение: 1) взять пакет на python-3, которому для сборки требуется libnumpy-py3-devel. Примером такого пакета может быть python3-module-pandas или blender. 2) удалить из сборочных зависимостей libnumpy-devel, но оставить libnumpy-py3-devel. 3) пересобрать пакет. Ожидаемый результат: Успешная пересборка пакета Результат: Пакет не пересобирается, ошибки из-за отсутствующих файлов "numpy/$something", например: pandas/_libs/algos.c:643:10: fatal error: numpy/arrayobject.h: No such file or directory 643 | #include "numpy/arrayobject.h" Дополнительные данные: Хотя имеющиеся исходные файлы пакета можно изменить, чтобы заголовки искались в директории "numpy-py3" вместо "numpy", это проблему полностью не решает, поскольку некоторые файлы генерируются во время сборки с помощью cython, и в таких сгенерированных файлах указана директория "numpy", а не "numpy-py3". Такое, например, происходит при сборке пакета python3-module-pandas.
Подтверждаю. Та же фигня с pytables. Требует libnumpy-devel, как ни крути.
Предлагаю переделать libnumpy-devel и libnumpy-py3-devel следующим образом: Перенести заголовки libnumpy-devel в директорию /usr/include/python2.7/numpy Перенести заголовки libnumpy-py3-devel в директорию /usr/include/python3.8/numpy/ Причём, соответствующие цифры в именах директорий будут зависеть от текущих версий питона. При этом в стандартных директориях для include файлов больше не будет директории numpy, и соответственно для сборки с numpy для python2 или python3 потребуется явно указывать дополнительные директории для поиска этих файлов. В .pc файлах также всё для этого присутствует. Таким образом, больше не будет необходимости переделывать пути с "numpy/$something.h" на "numpy-py3/$something.h", в том числе у сгенерированных файлов, и всегда при сборке будут находится только заголовки для указанной версии numpy. Если бы не ошибка 34619, можно было бы и вообще оставить заголовки в их директории по-умолчанию, в поддиректории %python_sitelibdir или %python3_sitelibdir. Сделал тестовое задание #247694. Пока что с ним успешно пересобрались boost и blender. Попробую ещё другие пакеты. Планирую через несколько дней отправить это задание в Сизиф.
python-module-numpy-1:1.15.4-alt5 -> sisyphus: Wed Mar 11 2020 Aleksei Nikiforov <darktemplar@altlinux> 1:1.15.4-alt5 - Moved include directories (Closes: #38013).
А что-нибудь мешает 1.15.4-alt5 и в p9 собрать?
(Ответ для Sergey Y. Afonin на комментарий #4) > А что-нибудь мешает 1.15.4-alt5 и в p9 собрать? 250765 AWAITING #1 p9 python-module-numpy.git=1.15.4-alt5
(Ответ для Sergey Y. Afonin на комментарий #4) > А что-нибудь мешает 1.15.4-alt5 и в p9 собрать? Мешает. Задание ломает пересборку следующих пакетов: btrack-1.0.0-alt1.hg20140708 ffc-1.6.0-alt1.dev.git20150430.1 gdal-2.2.3-alt3.1 h5py-2.9.0-alt1 pybind11-2.2.4-alt1 python-module-Scientific-2.9.3-alt2 python-module-arrayfns-24.2-alt7 python-module-bottleneck-1.2.1-alt1 python-module-cyrand-0.3-alt1.git20150228.1.1.1 python-module-geo-1.0.0-alt1.svn20080909.5 python-module-gnuplot-1.8-alt4.1 python-module-gts-0.3.1-alt2.svn20090606 python-module-jsonpickle-0.9.5-alt1.1 python-module-lmoments3-0.3.1-alt1.git20140925.1 python-module-matplotlib-2.2.3-alt3 python-module-mdp-3.4-alt2.git20140427 python-module-nifti-0.20090303.2-alt3.git20090924 python-module-pyamg-2.2.1-alt2 python-module-pyannote.core-0.3.4-alt1.git20150304.1.1 python-module-pycdf-0.6_0-alt7 python-module-pygsl-2.2.0-alt1 python-module-pyhacrf-0.1.2-alt1.1.1 python-module-pylbfgs-0.2.0.12-alt1 python-module-pysparse-1.3-alt1.git20130305 python-module-scikits.bootstrap-1.0.0-alt1.1 python-module-scikits.vectorplot-0.2-alt2.git20150130.1.1.1 python-module-seqlearn-0.2-alt2.1 python-module-shapely-1.5.17-alt1.post1.1.1.1 python3-module-scikit-image-0.15.0-alt1 python3-module-wavelets-1.0.2-alt2 uhd-3.14.1.1-alt1.1 Удаляю задание.
(In reply to Andrey Cherepanov from comment #6) > > А что-нибудь мешает 1.15.4-alt5 и в p9 собрать? > > Мешает. > Задание ломает пересборку следующих пакетов: Да, что-то много. > uhd-3.14.1.1-alt1.1 Как раз вот его хотелось обновить для обновления gpsd. А если все ломающиеся пакеты тоже обновить?
(Ответ для Sergey Y. Afonin на комментарий #7) > (In reply to Andrey Cherepanov from comment #6) > > > > А что-нибудь мешает 1.15.4-alt5 и в p9 собрать? > > > > Мешает. > > Задание ломает пересборку следующих пакетов: > > Да, что-то много. > > > uhd-3.14.1.1-alt1.1 > > Как раз вот его хотелось обновить для обновления gpsd. А если все ломающиеся > пакеты тоже обновить? Обновляйте.
15 из них удалены из Sisyphus, в основном модули питона: btrack-1.0.0-alt1.hg20140708 python-module-Scientific-2.9.3-alt2 python-module-cyrand-0.3-alt1.git20150228.1.1.1 python-module-gts-0.3.1-alt2.svn20090606 python-module-lmoments3-0.3.1-alt1.git20140925.1 python-module-mdp-3.4-alt2.git20140427 python-module-nifti-0.20090303.2-alt3.git20090924 python-module-pyamg-2.2.1-alt2 python-module-pyannote.core-0.3.4-alt1.git20150304.1.1 python-module-pycdf-0.6_0-alt7 python-module-pygsl-2.2.0-alt1 python-module-scikits.bootstrap-1.0.0-alt1.1 python-module-scikits.vectorplot-0.2-alt2.git20150130.1.1.1 python-module-seqlearn-0.2-alt2.1 Из них 4 есть в виде python3-*: python3-module-mdp python3-module-pyamg python3-module-pyannote.core python3-module-pygsl Что-то пока не знаю, может правильнее uhd по старому собрать.
(In reply to Sergey Y. Afonin from comment #9) > 15 из них удалены из Sisyphus, в основном модули питона: > Из них 4 есть в виде python3-*: > > python3-module-mdp > python3-module-pyamg > python3-module-pyannote.core > python3-module-pygsl > > Что-то пока не знаю, может правильнее uhd по старому собрать. А может быть уже пора обсуждать план выкидывания ненужных модулей python2 из p9?