[РЕШЕНО]Не могу найти пакет python-dev. Какая версия python установлена в Gentoo по умолчанию -devel/не devel?

Здравствуйте! Сейчас уже перехожу к установке Theano. В инструкции (http://deeplearning.net/software/theano/install_ubuntu.html) сказано
"The development package (python-dev or python-devel on most Linux distributions) is recommended (see just below)."

"python-dev, g++ >= 4.2
Highly recommended. Theano can fall back on a NumPy-based Python execution model, but a C compiler allows for vastly faster execution."

Я так и не смог найти пакет python-dev или python-devel. Может USE-флаг какой за это должен отвечать? Есть подозрения на -build в пакете dev-lang/python, но я не уверен. Может с gentoo "из коробки" идет именно python-dev версия? Помогите пожалуйста разобраться с этим.

.

White_Shark написал(а):
Я так и не смог найти пакет python-dev или python-devel. Может USE-флаг какой за это должен отвечать? Есть подозрения на -build в пакете dev-lang/python, но я не уверен. Может с gentoo "из коробки" идет именно python-dev версия? Помогите пожалуйста разобраться с этим.

В бинарных дистрибутивах суффикс -dev обозначает пакеты с файлами, необходимыми для разработки (компилляции приложений, использующих приложение).
В Gentoo они идут без выделения, в составе базового пакета.

:wq
--
Live free or die

Спасибо за быстрый ответ!

Спасибо за быстрый ответ! Т.е. мне не заморачиваться, у меня всё, что нужно (то, что подразумевается под python-dev) уже установлено "из коробки". Отлично!

/

Только помни о ереси.
И не забывай о гентушной фиче (слоты) и правильном указании используемой версии питона.

:wq
--
Live free or die

По поводу ереси :), мне и

По поводу ереси :), мне и самому стрёмно ставить что-то без Portage. Я хочу Theano поставить через этот ebuild
https://github.com/npinto/sekyfsr-gentoo-overlay/blob/master/sci-libs/Theano/Theano-9999.ebuild
Я так понял, что установится последняя версия, т.е. 0.9.0.
Сейчас как раз разбираюсь с подключением оверлеев.

Единственное, что хочу установить без portage - это cuDNN. https://developer.nvidia.com/rdp/cudnn-download. Там просто в установленную папку с CUDA (/opt/cuda) нужно в соответсвующие директории /opt/cuda/lib64 и /opt/cuda/include запихнуть несколько файлов из .tgz архива, я думаю, что это не сильно критично. Просто я про это буду помнить и всё.

А так стараюсь ко всему искать ebuild'ы, а то мало ли куда чего пихается - потом не удалишь, если что :) Кстати, может быть даже для cuDNN буду ebuild использовать - вот этот http://data.gpo.zugaina.org/cynede/dev-libs/nvidia-cuda-cudnn/, единственное - это просто подсуну этому ebuild'у последнюю версию cuDNN - v6.0 ну и в ebuild подправлю название с PKG="cudnn-8.0-linux-x64-v5.1" на PKG="cudnn-8.0-linux-x64-v6.0" и в функции
src_install() {
cd "${S}"

pushd "lib64"

dolib.so libcudnn*.so*
dolib.a libcudnn_static.a

popd

pushd "include"

insinto /usr/include
doins cudnn.h

popd
}

insinto /usr/include поменяю на insinto /opt/cuda/include. Хотя на счет последнего не уверен - может быть это не нужно делать. Может быть просто в LD_LIBRARY_PATH добавлю /usr/include - не знаю как лучше, ну попробую и так и так и посмотрю на результат :)

и правильном указании используемой версии питона.

А вот с этим не разобрался пока. Как лучше сделать? В make.conf указать

PYTHON_TARGETS="python3_4 python2_7"
PYTHON_SINGLE_TARGET="python3_4"
USE_PYTHON="3.4"

или сделать
ws-pc white_shark # eselect python list
Available Python interpreters, in order of preference:
[1] python3.4
[2] python2.7 (fallback)
ws-pc white_shark # eselect python set 1

Или и то, и то?

Обычный путь обновления

Обычный путь обновления ebuild - скопировать его в файл отражающий имя новой версии и попробовать собрать. По идее, нормально написанный ебилд должен это пережить. Сдеесь почему-то не отражена версия компонента в названии потому надо переименовать архив... insinto /usr/include менять не надо, это файлы заголовков, часто того самого -dev пакета из других дистурибутивов.

Насчет питона я не понял, в предложенном ебилде его нету. Кому и когда он нужен?

Сдеесь почему-то не отражена

Сдеесь почему-то не отражена версия компонента в названии потому надо переименовать архив...

Попробую собрать этот ebuild, но похоже, что проще руками запихнуть эти 3 файла. С версией пакета тоже не совсем понятно. Я вчера немного пытался разобраться с тем, как устроены ebuild'ы. За версию пакета отвечает переменная ${PV}, за полное имя - ${P}, но в этом ebuild'е эти переменные нигде не встречаются. Поэтому, переименование пакета, вроде бы, ни к чему привести не должно, или я не прав? На самом деле эта cuDNN даже под виндой устанавливается руками - нужно распихать соответствующие библиотеки в соответствующие папки в установленной CUDA-toolkit. Там всего 3 файла.

insinto /usr/include менять не надо, это файлы заголовков, часто того самого -dev пакета из других дистурибутивов.

Понял, спасибо за разъяснение.

Насчет питона я не понял, в предложенном ебилде его нету. Кому и когда он нужен?

Да это мне Anarchist скорее всего "на будущее" сказал. Понятно, что я дальше буду Theano, pygpuarray, OpenBLAS и прочие питоновские библиотеки ставить - он и посоветовал, предостерег :) Вот сейчас как раз буду с PYTHON_TARGETS и PYTHON_SINGLE_TARGET разбираться, а то мне сейчас придется через pip ставить пакет, для которого я не смог найти ebuid. scikit-cuda или skcuda называется http://scikit-cuda.readthedocs.io/en/latest/. Буду ставить так

(не root)$ python -m pip install --user --no-deps git+https://github.com/lebedov/scikit-cuda.git#egg=scikit-cuda

В этом случае, если я правильно понял, нужно указать для какого питона (мне нужен 3.4) требуется установить этот пакет (scikit-cuda). И, видимо, как-то нужно использовать флаги PYTHON_TARGETS и PYTHON_SINGLE_TARGET, но пока не разобрался как правильно :)

.

evadim написал(а):
По идее, нормально написанный ебилд должен это пережить.

Необходимое условие — неизменность договорённостей об именовании и адреса размещения upstream'ом.

:wq
--
Live free or die

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".