LINUX.ORG.RU

Python не находит модули

 


1

1

Есть набор утилит на питоне. К нему - простая на вид инструкция установки. Но я не осилил - при запуске не находит модуль.

https://github.com/JBaczuk/blockchain-dev-tools.git

Дело было на Ubuntu Server 18.04 LTS

#накатил virtualenv
sudo apt-get install virtualenv
#накатил менеджер пакетов (сразу для 2 и 3 питона)
sudo apt-get install python-pip
sudo apt-get -y install python3-pip

Запустил приблуду. Если правильно понимаю, это директория-среда типа виртуального контейнера.

virtualenv ENV
cd ENV/

Внутри есть bin и lib, значит туда и клонировал с гитхаба.

git clone https://github.com/JBaczuk/blockchain-dev-tools.git
cd blockchain-dev-tools

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

./INSTALL.sh
Получил ошибку...
cp: cannot create regular file '../lib/python3.6/': Not a directory
С судо выполнилось.
sudo ./INSTALL.sh

Поднялся наверх и выполнил activate

cd ..
source bin/activate

Накатил модуль ecdsa (для 2 и 3 питонов)

pip install ecdsa
Модуль установился. Вот выхлоп:
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Collecting ecdsa
  Using cached https://files.pythonhosted.org/packages/a2/25/3bb32da623b39a27a07d194cd58e4540224421d924661de2e694304ae4fa/ecdsa-0.14.1-py2.py3-none-any.whl
Collecting six
  Using cached https://files.pythonhosted.org/packages/65/26/32b8464df2a97e6dd1b656ed26b2c194606c16fe163c695a992b36c11cdf/six-1.13.0-py2.py3-none-any.whl
Installing collected packages: six, ecdsa
Successfully installed ecdsa-0.14.1 six-1.13.0

Пробую запустить утилиту msgprefixgen, а модуля нету

Traceback (most recent call last):
  File "/home/local-seed-1/ENV/bin/msgprefixgen", line 4, in <module>
    from blockchain_fundamentals import *
ModuleNotFoundError: No module named 'blockchain_fundamentals'

Смотрю в lib/ и вижу там blockchain_fundamentals.py

С другими утилитам - тоже модульная печаль. Только калькулятор эмиссии выполняется.

$ distribution -m 10000000 -s 100
Results
===================
Block Time (sec): 600
Initial Subsidy: 100
Halving Interval (blocks): 50051.379461857425
Max Supply: 10000000

Почитал исполняемые файлы, путей к инклудам не написано. Попытался подпихивать во все директории. Наплодил сральник из файлов, но так и не заработало.



Последнее исправление: k0ttee (всего исправлений: 1)

Если правильно понимаю, это директория-среда типа виртуального контейнера.

Неправильно понимаете. Ознакомьтесь с порядком использования virtualenv.

Partisan ★★★★
()

Ты не разобравшись с основами кинулся сразу делать.

Начни с создания окружения: для 3-го питона используй python3 -m venv имя_окружения. Потом уже source путь_к_окружению/bin/activate.

Да и вообще, какой-то мутный там установщик у твоего пакета, жестко привязан к Python 3.6.

gruy ★★★★★
()
Ответ на: комментарий от gruy

Лучше начать с pyenv. И в нем поставить 3.6 или любую требуемую версию. А venv имхо удобней создавать через pipenv или poetry

pawnhearts ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.