Сайт | Скачать | Видео | Wiki

Автор Тема: PRA. Как собрать пакет -> модуль из исходников?  (Прочитано 1123 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн RollF

  • Новичок
  • *
  • Сообщений: 24
  • Репутация: +1/-0
Пакет из арчрепы чем-то не устроил?
Какой именно?
Если речь об  исходниках, то я привык получать информацию из первых рук и вначале попал на сайт разработчика. Это потом уже, когда здесь вовсю закрутилось обсуждение, я обнаружил их на AUR (с которым нет навыков работы).
Пакета же, ~готового к использованию под PRA (в моем понимании) просто не существует, то что показал krasnyh - другая программуля, другой кошелек и мне не подходит.
Кроме того, меня интересуют и более экзотические программы, для которых дай Бог исходники найти (особенно с моим опытом Linux-поиска)  :(

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 657
  • Репутация: +10/-0
sudo apt-get install python3-setuptools
    python3 setup.py install

под серверной убунтой прекрасно установилось
тут ПРА( = Арч)
нужно найти как в Арче установить python3-setuptools
ну и 3й питон в системе должен присутствовать
и Qt
============
ЗЫ
вот тут необходимое для биток-версии electrum'a ( если наша ось = Арч )
https://www.archlinux.org/packages/community/any/electrum/

для dash-версии тоже самое понадобится
===========
ЗыЗы
под бубунтой достаточно было:
wget https://download.electrum.org/3.1.3/Electrum-3.1.3.tar.gz
pip3 install Electrum-3.1.3.tar.gz

для dash-версии думаю полностью анологично
« Последнее редактирование: 03 Июль 2018, 17:26:43 от k0l0p0k »
1.нетбук  Samsung N145 (оси: ubuntu+OLS, PRA)
2.стационары(пеньки,2-8Gb,Radeon RX460, ubuntu+openBox+LXPanel, PRA)

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 23168
  • Репутация: +167/-0
    • PuppyRus-A
я обнаружил их на AUR
Не получилось собрать?
« Последнее редактирование: 04 Июль 2018, 09:12:12 от sfs »

Оффлайн RollF

  • Новичок
  • *
  • Сообщений: 24
  • Репутация: +1/-0
Пакет я так и не собрал: не тороплюсь, "зрею морально" ::), но как-то потыкался, получая в основном "отсутствие целей" и неразрешенные зависимости.
Тем не менее, решил набросать некий мануал (опять же очень неспешно) для себя и сотоварищей. Для начинающих сборка из исходников это если не потрясение, то уж разрыв всех шаблонов точно.  :o
Вот "введение в тему" (для критики).
---------------
Исходники нужны, чтобы устанавливать программы в любом Linux(е), независимо от среды разработки + еще для кой-чего (не наша тема). Этих Linux(ов) м.б. ооо...чень много (версий, сборок, …) - фактически каждый более-менее грамотный (в Linux(е)) человек м. создать "свой" Linux.
Это вам не Windows! О нем вообще лучше на время забыть и не проводить никаких параллелей/аналогий.
Устанавливаются эти программы также очень по разному, ~ как стукнет в голову разработчикам (с точки зрения начинающего юзера).
И что нам со всем этим делать, как узнать "правильный" способ установки конкретной программы? Краткий ответ — из инструкций самих разработчиков, которые они вкладывают в исходник - файл-архив своей разработки. Эти инструкции м.б. текстами-руководствами для людей, но кроме этого, могут присутствовать и скрипты (наборы команд) для соот. системных программ различных Linux(ов). Т. е. "просто" надо знать, как грамотно применять эти системные программы + предоставляемые скрипты и тогда установка программ из исходников значительно упростится.
Примером такого скрипта может служить файл configure, запускать который надо в терминале командой ./configure, находясь именно в "корне" директории/папки разархивированного исходника.  Configure это не системная команда, как например, я думал раньше, она / он (скрипт) может и отсутствовать в архиве исходника. Попутно замечу, что для Linux(а) названия файлов без расширений — не такое уж редкое явление.
Если никаких инструкций нет (редкий случай), начинающему лучше отказаться от затеи установки этой программы из исходников. Исключение — все ~легко получилось по некой стандартной для этого Linux(а) схеме.
В недрах практически любого Linux(а) есть свой магический "Менеджер пакетов" — системная программа, специально предназначенная для обслуживания программ на различных стадиях их существования. Для Arch Linux, PRA это pacman.
Если вам приходится работать с исходниками, менеджер пакетов необходимо тщательно изучить и грамотно, осознано применять.
Цель этого введения — ограничить метания начинающих конкретными рамками: зачем исходники вообще нужны, инструкции в самих исходниках,  менеджер пакетов+. Хорошенько  осознав этот "базис" можно сэкономить нервы (свои и окружающих) и с большей вероятностью добиться результата.
---------------

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 23168
  • Репутация: +167/-0
    • PuppyRus-A
Исходники нужны, чтобы устанавливать программы в любом Linux(е), независимо от среды разработки + еще для кой-чего (не наша тема). Этих Linux(ов) м.б. ооо...чень много (версий, сборок, …) - фактически каждый более-менее грамотный (в Linux(е)) человек м. создать "свой" Linux.
Все программы для Linux совместимы с любым дистрибутивом Linux (и некоторыми BSD) на уровне исходного кода. Т.е. программу можно собрать в Вашем дистрибутиве с учетом имеющихся в нем версий библиотек. Т.е. из текста на каком либо языке программирования получаем машинный код. Это и называется компиляция
# ldd /bin/ls
linux-gate.so.1 (0xb7776000)
libcap.so.2 => /usr/lib/libcap.so.2 (0xb7764000)
libc.so.6 => /usr/lib/libc.so.6 (0xb7587000)
libattr.so.1 => /usr/lib/libattr.so.1 (0xb7581000)
/lib/ld-linux.so.2 => /usr/lib/ld-linux.so.2 (0x800d7000)
Бинарник (ls)- файл с правами 755 (т.е. исполняемый)
Как правило имеет зависимости от библиотек (*.so)

configure : это наиболее часто встречающийся вариант сборки, но не единственный
Я не программер. Про gcc cmake не буду писать - сам не глубоко в теме
Иногда вместо configure бывает https://ru.wikipedia.org/wiki/Automake
Они настраивают процесс сборки под Вашу систему. Т.е под использование того что есть у вас в системе. Если того, чего надо проге нет - выдаст ошибку. Надо доустановить
Если зависимость необязательная - она пропускается или это можно сделать ключом
Посмотреть все ключи : ./configure --help
Если никаких инструкций нет (редкий случай), начинающему лучше отказаться от затеи установки этой программы из исходников.
Если нет automake и configure , но есть Makefile - возможно прога простая. Можно попробовать make

"Менеджер пакетов" (ПМ) не совсем по теме. Просто доустановить зависимости наиболее просто через ПМ. Это уже специфика сборки под конкретный линукс (debian centos arch)
Т.е. по итоге make получаем бинарники. Далее их можно make install или пакетировать
Система подобная ABS помогает юзеру собрать пакет (именно уже пакет) не вникая в глубины того, что описано выше
Там уже готовый рецепт сборки. Достаточно поменять версию проги - получим свежую

То что в ABS и так выложат в виде пакетов, но в arch (в других дистрах есть аналоги) есть еще AUR
Собирая packer-ом чужие сценарии - наиболее просто вникнуть в компиляцию
« Последнее редактирование: 15 Июль 2018, 09:56:38 от sfs »

Оффлайн RollF

  • Новичок
  • *
  • Сообщений: 24
  • Репутация: +1/-0
Благодарю за разъяснения, sfs, это поможет мне в дальнейших раскопках.
Покамест же я пишу "Мануал по сборке из исходников для начинающего юзера, глазами начинающего юзера". На этом этапе всякие страшные термины, сложные схемы и отрывистые, краткие рекомендации скорее собьют с толку, чем помогут.  ??? Сейчас надо что-то простое, систематическое, постепенно включающее разные термины, тем более во введении.
Ваши, безусловно ценные, замечания учту в работе  :-*

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 657
  • Репутация: +10/-0
1) компилятор
2) интерпретатор

просто погуглите
1.нетбук  Samsung N145 (оси: ubuntu+OLS, PRA)
2.стационары(пеньки,2-8Gb,Radeon RX460, ubuntu+openBox+LXPanel, PRA)

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 23168
  • Репутация: +167/-0
    • PuppyRus-A
"Мануал по сборке из исходников для начинающего юзера, глазами начинающего юзера".
Если коротко : юзайте AUR через packer в пра-ролл. Что не получается - пишите здесь
В пра03 будут дополнительные проблемы (старые либы и пр.) - только для опытных

Оффлайн I-Jurij

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 514
  • Репутация: +16/-0
Самый толковый "Мануал по сборке из исходников для начинающего юзера, глазами начинающего юзера" будет состоять из нескольких строк:
Обратись за помощью к знающим (к создателям приложения, на форуме дистрибутива, к знакомому сисадмину или просто продвинутому гуру).

ЗЫ: сборка пакетов из исходников - задача не для юзера. Тот, кто собрал пакет (правильно) и установил - в принципе уже не просто юзер.
« Последнее редактирование: 16 Июль 2018, 12:24:58 от I-Jurij »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 23168
  • Репутация: +167/-0
    • PuppyRus-A
Обратись за помощью к знающим
AUR - оно и есть. Знающие уже написали рецепт. Новичку достаточно сделать простые манипуляции + везение

Оффлайн DdShurick

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 6099
  • Репутация: +156/-0
  • Старый чайник
AUR - оно и есть.
Разве он даст опыт работы?
Вот вы привыкли, тыр-пыр и готово, а как вникнуть, так начинается нытьё про староверство. Да, "староверский" метод намного труднее и гораздо менее результативен, зато знаешь что и как. А если ещё коды читаешь.... 8) начинаешь понимать, что это всё г....  :'(
« Последнее редактирование: 16 Июль 2018, 13:08:42 от DdShurick »
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150)
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (Intel Atom N270, intel GMA 950)
Nettop Asus Eee Box PC EB1007 (Intel Atom D425, Intel GMA 3150)

Оффлайн I-Jurij

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 514
  • Репутация: +16/-0
... Тем не менее, решил набросать некий мануал (опять же очень неспешно) для себя и сотоварищей. Для начинающих сборка из исходников это если не потрясение, то уж разрыв всех шаблонов точно.  :o
Вот "введение в тему" (для критики) ...
Критика:
ничего непонятно. Отсутствует структура, логика изложения, определения. Зато много эмоционального и лишнего.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 23168
  • Репутация: +167/-0
    • PuppyRus-A
Критика:
Согласен. Но хочется верить что это только начало

Оффлайн LinuxMan

  • Пользователь
  • **
  • Сообщений: 42
  • Репутация: +1/-0
Читал, что использовать make install и тому подобные методы нельзя! Так как ваша система (в лице пакетного менеджера) ничего не будет знать об установленных файлах и в случае необходимости удаления, "вычистить" систему будет почти невозможно. Поэтому профессионалы советуют обязательно собирать пакеты для вашего Линукса, чтобы потом пакетный менеджер контролировал файлы программы.
Модули pfs - ещё лучшее решение!

Оффлайн DdShurick

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 6099
  • Репутация: +156/-0
  • Старый чайник
что использовать make install и тому подобные методы нельзя!
Смелое утверждение. Применительно к Puppy такой метод вполне приемлем. Программа будет установлена в сохранёнку (/initrd/pup_rw, /initrd/changes). При "чистой загрузке", без сохранёнки, кроме установленной программы там ничего не будет. Остаётся только запаковать в модуль.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150)
Netbook Acer 722 c6ckk (AMD C-50 Ontario, Radeon HD 6250)
Nettop Asus Eee Box PC B202 (Intel Atom N270, intel GMA 950)
Nettop Asus Eee Box PC EB1007 (Intel Atom D425, Intel GMA 3150)