LINUX.ORG.RU

скомпилировать программу под убунту 22.04.4 LTS

 


0

1

Здравствуйте, учусь играть на синтезаторе через midi. Освоил программу пиано бустер и хочу еще заниматься на linthesia_0.4.3. скачал исходник linthesia_0.4.3.orig.tar.xz, но никак не могу скомпилировать под свой дистрибутив. 2й вечер как рыба об лед.Модет кто поможет мне, соберет?


  • Качаете исходник как исходник пакета, рекомендую с помощью dget, например отсюда https://snapshot.debian.org/package/linthesia/ .
  • Собираете пакет из исходника, как обычно deb-пакет собирается из исходников; возможно, потребуется отключить тестирование собранных бинарников и подписывание пакета.
  • Ставите полученные в результате сборки файлы *.deb в систему (возможно будут версии пакетов для отладки, их ставить не нужно).
  • Профит.
Infra_HDC ★★★★★
()
Ответ на: комментарий от Infra_HDC

Спасибо что ответил, но я автослесарь и эти премудрости что написанно выше я все читал и пытался применить, и если бы получилось то я бы не просил о помощи. Хочешь помочь? собери пожалуста мне эту прогу

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

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

mkdir build 
cd build
touch build.sh # Скопировать в него скрипт что ниже
chmod +x ./build.sh
./build.sh

build.sh

#!/usr/bin/env sh

#Зависимости для сборки
sudo apt install  libglibmm-2.4-dev \
                  libsqlite3-dev    \
                  cmake             \
                  meson             \
                  libsdl2-dev       \
                  libsdl2-ttf-dev   \
                  libsdl2-image-dev \
                  pkg-config
#####################################
#Получение исходного кода
git clone  https://github.com/linthesia/linthesia.git
#Сборка и установка
cd linthesia && meson --prefix /usr build &&  \
                ninja -C build &&             \
                sudo ninja -C build install
###############################################
linthesia

Если всё успешно сразу запустится. У меня запустилось (правда на Debian) бинари не прилагаю, не качай бинари от левых Васянов в интернете, учись собирать сам. Пригодится =)

Тут бы ещё в пакет оформить, но ладно…

Удачной учёбы, пианина это круть.

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 3)
Ответ на: комментарий от mmc72

В общем, я глянул поглубже на то, что есть у дебиана в снапшотах, и там два пакета этой версии, один 2014 года выпуска, другой — 2019. На Вашу версию 2019 не ставится, а 2014 даже не пробовал ставить, т.к. 2019 после установки даёт ошибки, которые не лечатся командой sudo apt install -f, а просто предлагает снести этот пакет, поэтому сборка пакета из исходника, доступного в дебиане — не вариант. И, как и советовали Вам, лучше попробовать собрать вручную из тарбола на гитхабе или еще где и потом засунуть куда-нибудь в /opt в пути и запускать руками или ярлычки создать руками. Как-то так, что ли. В первом приближении deb-пакет для комфортной установки создать будет если не невозможно, то существенно трудно.

Infra_HDC ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

мучаюсь, нифига не клется: kesha@kesha-Lenovo-G580:~$ cd linthesia-0.4.3 kesha@kesha-Lenovo-G580:~/linthesia-0.4.3$ make make -C src/libmidi all make[1]: вход в каталог «/home/kesha/linthesia-0.4.3/src/libmidi» make[1]: Цель «all» не требует выполнения команд. make[1]: выход из каталога «/home/kesha/linthesia-0.4.3/src/libmidi» make -C src all make[1]: вход в каталог «/home/kesha/linthesia-0.4.3/src» g++ -I . -I libmidi -ggdb -Wall -ansi pkg-config --cflags gtkmm-2.4 gconfmm-2.6 gtkglextmm-1.2 alsa -DGRAPHDIR=«"../graphics"» -c -o main.o main.cpp /bin/sh: 1: pkg-config: not found In file included from main.cpp:11: OSGraphics.h:15:10: fatal error: gtkmm.h: Нет такого файла или каталога 15 | #include <gtkmm.h> | ^~~~~~~~~ compilation terminated. make[1]: *** [<встроенное>: main.o] Ошибка 1 make[1]: выход из каталога «/home/kesha/linthesia-0.4.3/src» make: *** [Makefile:5: all] Ошибка 2 kesha@kesha-Lenovo-G580:~/linthesia-0.4.3$ ./autogen.sh bash: ./autogen.sh: Нет такого файла или каталога kesha@kesha-Lenovo-G580:~/linthesia-0.4.3$ libgtkmm-2.4-dev libgtkmm-2.4-dev: команда не найдена kesha@kesha-Lenovo-G580:~/linthesia-0.4.3$ libgtkmm-2.4-dev libgconfmm-2.6-dev libgtkglextmm-x11-1.2-dev libasound2-dev libgtkmm-2.4-dev: команда не найдена libgconfmm-2.6-dev: команда не найдена libgtkglextmm-x11-1.2-dev: команда не найдена libasound2-dev: команда не найдена kesha@kesha-Lenovo-G580:~/linthesia-0.4.3$ ./build.sh bash: ./build.sh: Нет такого файла или каталога kesha@kesha-Lenovo-G580:~/linthesia-0.4.3$

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

трындец. тут не компилять - тут учиться ставить программы надо. ТС, как ты думаешь, удобно людям читать вот эту кашу, которую ты сюда вывалил, не удосужившись даже разбить вывод на абзацы? Перед отправкой можно/нужно нажать на кнопку предпросмотр.

Вопреки рекомендации скачать поновее с git(0.6.1a), ты упорно бъешься лбом в 0.4.3. Не надо этого делать.

Начни с этого (установка зависимостей):

sudo apt install libasound2-dev libsqlite3-dev libsdl2-dev libsdl2-ttf-dev libsdl2-image-dev libglibmm-2.4-dev cmake meson pkg-config

Затем удали репозиторий, который ты скачал с git и скачай заново

git clone https://github.com/linthesia/linthesia.git

Там куда оно скачалось появится каталог linthesia Перейди в него cd linthesia/ или открой этот каталог в терминале (если в файломанагере есть такой пункт меню) В терминале это будет выглядеть kesha@kesha-Lenovo-G580:~/linthesia

Затем последовательно должен сделать (согласно рекомендации в git)

1: meson --prefix /usr build

2: ninja -C build

3: ninja -C build install

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

anonymous
()