LINUX.ORG.RU

make install идёт бесконечно

 , ,


0

1

Добрый день!

Я купил Orange Pi One для развёртывания на нём системы мониторинга, написанной на Python. Из официальных образов Orange Pi One я установил Debian Server 5.3.5.

Но обнаружил, что у этой сборки нет предустановленного Питона.

Тогда я

  • скачал с официального сайта архив Python-3.12.7.tar.xz,
  • скопировал его в папку /opt/python/download
  • распаковал, зашёл в папку cd /opt/python/download/Python-3.12.7/
  • произвёл конфигурацию при помощи команды sudo ./configure –prefix=/opt/python/python3.12/ (также я добавлял и убавлял аргумент –enable-optimization)
  • запустил sudo make install

…и он длится просто бесконечно, постоянно проверяя кучу каких-то параметров

checking for ftime… yes

checking for ftruncate… yes

checking for futimens… yes

Причём проверки повторяются, повторяются и повторяются.

Как мне без плясок с бубном «изучения рабочих инструментов & саморазвития» в разумные сроки установить Питон и заняться непосредственными задачами?

Зная инженерно-техническое комьюнити хотелось бы заранее ответить на некоторые возможные дополнительные вопросы:

  1. «Не, а зачем тебе Orange Pi One? Запусти мониторинг на Orange Pi 5 Max/Raspberry Pi/десктопе»

Orange Pi One - один из самых дешёвых, если не самый дешёвый одноплатник. Да, у меня есть из чего собрать небольшой десктоп. И если совсем припрёт, я запущу систему мониторинга на установленной на нём винде. Но хотелось бы сперва убедиться, что Линукс как ОС полностью непригоден для рабочих задач а нужен лишь для «изучения рабочих инструментов & саморазвития».

  1. «Почему ты решил собирать Питон из исходников? Почему не воспользуешься установкой при помощи apt-get? Там всё просто»

В файле /etc/apt/sources.list данной системы есть только http://ftp2.cn.debian.org/debian stretch main contrib non-free http://ftp2.cn.debian.org/debian stretch-updates main contrib non-free http://security.debian.org/debian stretch/updates main contrib non-free Все они не открываются. Если удалить .cn - тоже (404).

  1. «У тебя очень старая система, попробуй собрать под свой проц что-нибудь подновее. Вот тут есть Арч-фигарч, не знаю подойдёт ли, но попробовать стоит»

ЭВМ и ПО изначально создавались, что решать задачи, а не создавать их. Я хочу запустить систему мониторинга и любоваться на красивые графики. Для этого я готов запрогать её на Питоне, разобравшись, как он взаимодействует с SQLite, как на нём рисовать графики и как реализовать регулярную рассылку статистических срезов с картинками. Я не хочу погружаться в бесконечное фракталоподобное «изучения рабочих инструментов & саморазвитие».

Время правильное в системе? Make использует время изменения файлов в своей работе и если системные дата и время выставлены не верно, то возможно такое поведение. Я ещё с таким сталкивался когда на малине дженту компилял - там часов нет и каждый раз дата и время слетают.

u5er ★★
()

ЭВМ и ПО изначально создавались, что решать задачи, а не создавать их

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

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

«Угу. А одноплатники, в свою очередь, не создавались для того…» В свою очередь, было бы офигенно, чтобы прикладное ПО для этих одноплатников устанавливалось без необходимости компиляции. Чтобы была некая популярная ОС, обеспечивающая абстрагирование от архитектуры процессора конкретного одноплатника. И чтобы можно было пойти на сайт, например, сюда https://www.python.org/downloads/release/python-3127/ , скачать один-единственный файл python_for_linux.install, запустить его и чтобы всё круто поставилось за 30 секунд. Да. Было бы круто. В свою очередь. Но увы.

flammmable
() автор топика
Ответ на: комментарий от Kolins

На сайте Orange Pi было указано, что это не официальная сборка, поэтому попробовал начать с дистрибутивов, которые на слуху. Ubuntu запустилась криво. Debian вроде вполне хорошо. Но…

Ладно, спасибо. Пойду пробовать всё предложенное.

flammmable
() автор топика

.cn. по идее значит что это китайские зеркала. Не уверен что они должны работать извне материкового Китая. А 404 по последней ссылке так это нормально, т.к. это префикс, а не полная ссылка

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

На сайте Orange Pi было указано, что это не официальная сборка

официальные сборки обычно один раз собирут и забьют, у меня есть несколько orange pi zero в работе, поставил на них openwrt (тоже не официальный) - полет нормальный.

Да. Было бы круто. В свою очередь. Но увы.

Да это в целом беда linux

Kolins ★★★★
()

Пропиши правильные источники пакетов в sources.list и установи все твои питоны одной командой.

А то такую большую портянку бреда написал, а базовых вещей не сделал.

shell-script ★★★★★
()
Ответ на: комментарий от flammmable

В свою очередь, было бы офигенно, чтобы прикладное ПО для этих одноплатников устанавливалось без необходимости компиляции.

Есть такое. А ещё есть множество вариантов для кросскомпиляции, в том числе возможность сделать свою собственную прошивку с помощью busybox, yocto, …

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

На сайте Orange Pi было указано, что это не официальная сборка, поэтому попробовал начать с дистрибутивов, которые на слуху. Ubuntu запустилась криво. Debian вроде вполне хорошо. Но…

Orange Pi это производитель железа, и подразумевается, что вы должны говорить спасибо за то, что есть хотя бы такие образы, которые хоть как-то работают. Как только устройство сошло с конвейера, оно перестает поддерживаться.

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

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

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

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

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

Тут маленькое примечание - это можно делать для своего ПО. Но зачем компилить из исходников Python? Почему не установить готовый пакет из репозитория? Зачем ставить древнею версию Дебиана, пакеты для которой уже перенесли на кладбище (https://archive.debian.org)?

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

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

Это не правда, всё замечательно реализовано, это стандартный подход при разработке прошивок для устройств.

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

Еще есть https://sd-card-images.johang.se

ничего лишнего, собирает для кучи однолетников, в том числе на pi one прекрасно работает и в отличие от армбиан гораздо проще поставить пакет с сорсами ядра

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

да много их разных и одномпатников много разных и задачи разные бывают, под каждый случай приходится сводить первое-второе-третье и выбирать оптимальнвй вариант.

Kolins ★★★★
()
Последнее исправление: Kolins (всего исправлений: 1)
Ответ на: комментарий от u5er

Время правильное в системе?

Поставил правильное время - не завелось. Ну в смысле, те же бесконечные проверки. Увы. Но спасибо.

armbian не рассматривал?

Накатил Армбиан, там предустановленый Питон-3 и репозитории прописаны свежие. Сейчас Пип накачу штоб было щастье. Но со статическим ip пришлось повозиться. В отличие от предыдущего варианта тут по умолчанию не оказалось папки /etc/network/interfaces.d

Пропиши правильные источники пакетов в sources.list и установи все твои питоны одной командой.

Мамане своей советы давай как щи варить, умник.

Еще есть https://sd-card-images.johang.se

О! Спасибо огромное! Будет свободная минутка, попробую забацать пьюре-образ.

flammmable
() автор топика
Ответ на: комментарий от EXL

Однако, вот, например, собирать ядро под другие архитектуры - одно удовольствие, мне кажется.
Для родной архитектуры:
$make
Для чужой архитектуры (ARM в данном случае):
$make arch=ARM CROSS_COMPILE=arm-none-eabi-
Разница в 2 параметрах - и всё. Перед этим, правда, набор для сборки (toolchain, кажется, называется) установить, но это всего несколько пакетов arm-none-eabi-* прямо из репозитория.

PeleWin
()
Ответ на: комментарий от user_undefined

ничего лишнего, собирает для кучи однолетников

Создал образ для SD по инструкции на сайте. Образ получился 3,7ГБ.

У Армбиан, который не pure, образ весит 1,0ГБ.

Как так-то? Что значит pure?

flammmable
() автор топика
Ответ на: комментарий от flammmable

pure в данном случае - без дополнительных патчей, ванильный дебиан. Мне подошло когда потребовалось поставить пакеты с источниками ядра, в армбиане их сильно сложнее вытащить из-за кучи патчей.

Там большая часть образа - просто пустое место на fs, чувак делает размер что бы на 4х гиговую флешку влезло: https://github.com/johang/sd-card-images/blob/master/scripts/build-debian#L204

user_undefined
()
Ответ на: комментарий от flammmable

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

Там всего-то 4 гига, кажется сейчас сложнее найти нормальную флешку меньшего размера) ну и это место тебе будет доступно для использования

user_undefined
()

sudo ./configure –prefix=/opt/python/python3.12/ (также я добавлял и убавлял аргумент –enable-optimization)
запустил sudo make install

А make?

Сначала надо было выполнить команду make -j4, а затем уже make install (-j4 позволит тебе задействовать 4 потока для сборки процессором вместо одного по умолчанию).

posixbit ★★
()

ЭВМ и ПО изначально создавались, что решать задачи, а не создавать их. Я хочу

Дело не в решании, не в хотении, а в самом запускании make install

make install идёт бесконечно

always_has_been.jpg

anonymous
()