Я пытаюсь установить колесо на кластер Databricks. К сожалению, к этому колесу предъявляются следующие требования:
python_requires='==3.6.8'
На кластерах Databricks используется версия 3.7.3, поэтому установка колеса не выполняется. Как я могу установить более низкую версию python на эти кластеры?
Что я пробовал:
Переключиться на кластер, поддерживаемый Anaconda, и создать virtualenv с указанной версией c в init script -> это приводит к ошибке, которая останавливает запуск кластера (на основе этого https://docs.databricks.com/runtime/mlruntime.html).
Есть ли другой способ настроить virtualenv, который можно использовать на все узлы кластера?
Спасибо!
Обновление
Итак, я попробовал следующее:
I создал сценарий инициализации:
#!/bin/bash
wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz
tar xvf Python-3.6.8.tgz
ls
pwd
cd Python-3.6.8
ls
pwd
./configure --enable-optimizations --enable-shared
make -j8
sudo make altinstall
python3.6
для установки Python 3.6.8 на кластер (это занимает довольно много времени).
Сбой сценария инициализации -> вот ошибка log:
find: ‘build’: No such file or directory
find: ‘build’: No such file or directory
find: ‘build’: No such file or directory
find: ‘build’: No such file or directory
make[1]: [clean] Error 1 (ignored)
Executing <Task finished coro=<CoroutineTests.test_async_def_wrapped.<locals>.start() done, defined at /Python-3.6.8/Lib/test/test_asyncio/test_pep492.py:150> result=None created at /Python-3.6.8/Lib/asyncio/base_events.py:463> took 0.168 seconds
stty: 'standard input': Inappropriate ioctl for device
/Python-3.6.8/Modules/expat/xmlparse.c: In function ‘appendAttributeValue’:
/Python-3.6.8/Modules/expat/xmlparse.c:5577:40: warning: array subscript is above array bounds [-Warray-bounds]
if (!poolAppendChar(pool, buf[i]))
^
/Python-3.6.8/Modules/expat/xmlparse.c:545:27: note: in definition of macro ‘poolAppendChar’
: ((*((pool)->ptr)++ = c), 1))
^
/Python-3.6.8/Modules/expat/xmlparse.c:5577:40: warning: array subscript is above array bounds [-Warray-bounds]
if (!poolAppendChar(pool, buf[i]))
^
/Python-3.6.8/Modules/expat/xmlparse.c:545:27: note: in definition of macro ‘poolAppendChar’
: ((*((pool)->ptr)++ = c), 1))
^
python3.6: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
Распаковка и загрузка tar работает нормально, однако после второго ls / pwd произошли ошибки. В геренале до сих пор python установлен «где-то». Как я могу перенаправить, чтобы он был установлен в / databricks / python3 / bin / python?
Спасибо!