Делаем пакеты *.tgz (makepkg и checkinstall)

SLAX, Deep Style, ZenWalk

Модератор: Модераторы разделов

Аватара пользователя
innkeeper
Сообщения: 110

Делаем пакеты *.tgz

Сообщение innkeeper »

В чём отличия makepkg и checkinstall, какие у них плюсы/минусы/возможности.

P.S. простите но почему-то man по checkinstall не оказалось :-(
Спасибо сказали:
Аватара пользователя
Nika
Сообщения: 229
Статус: irc bot

Re: Делаем пакеты *.tgz

Сообщение Nika »

имхо, если дополнительных параметров при сборке пакета не указывать, то разницы никакой :)

т.е. checkinstall делает то же самое, только в более автоматизированном варианте.

сама пользуюсь checkinstall-ом
Спасибо сказали:
Аватара пользователя
DW
Бывший модератор
Сообщения: 662
Статус: и это еще не все или ничего.

Re: Делаем пакеты *.tgz

Сообщение DW »

man по checkinstall на оф. сайте программы.

http://asic-linux.com.mx/~izto/checkinstall/ .
подумал -> выпил -> подумал -> ... но недавно врачи запретили пить.
Спасибо сказали:
Аватара пользователя
innkeeper
Сообщения: 110

Re: Делаем пакеты *.tgz

Сообщение innkeeper »

Ладно :-) будем тогда по порядку задавать вопросы.

Всё что в инете я нашёл об checkinstall - так это то, что его надо писать вместо make install и он при этом отслеживает все изменения и создаёт из этого скелет пакета, затем его архивирует в tgz.

1) Но при этом пакет устанавливается в систему?
2) Так же при помощью него можно делать RPM, deb пакеты. Делать это на Slackware имеет смысл, или всё же стоит оставить это родным дистрибутивам?

innkeeper добавил в 08.11.2004 12:51
(D.W. @ Понедельник, 08 Ноября 2004, 11:34) писал(а):man по checkinstall на оф. сайте программы.

http://asic-linux.com.mx/~izto/checkinstall/ .



Спасибо, почитаем
Спасибо сказали:
Аватара пользователя
Nika
Сообщения: 229
Статус: irc bot

Re: Делаем пакеты *.tgz

Сообщение Nika »

(innkeeper @ Понедельник, 08 Ноября 2004, 13:51) писал(а):1) Но при этом пакет устанавливается в систему?


да, устанавливается. checkinstall его сам ставит.
я пишу сначала ./configure потом сразу checkinstall, т.е. уже вместо make

(innkeeper @ Понедельник, 08 Ноября 2004, 13:51) писал(а):2) Так же при помощью него можно делать RPM, deb пакеты. Делать это на Slackware имеет смысл, или всё же стоит оставить это родным дистрибутивам?



имхо, нет. зачем они нужны, если есть tgz
я теперь даже рмп-ки в .tgz превращаю - rpm2tgz
Спасибо сказали:
Аватара пользователя
innkeeper
Сообщения: 110

Re: Делаем пакеты *.tgz

Сообщение innkeeper »

checkinstall выдал следующее:

Код: Выделить всё

=== Installation results ===
/usr/sbin/checkinstall: line 815: 20837 Segmentation fault      $INSTALLWATCH -o /${TMP_DIR}/newfiles.tmp $TMP_SCRIPT 2>&1

Что делать?
Спасибо сказали:
Аватара пользователя
Device
Сообщения: 71

Re: Делаем пакеты *.tgz

Сообщение Device »

если сказать checkinstall'у
checkinstall -S
то он просто создат tgz (R для rpm , D для deb), не устанавливая его.
checkinstall -h
Jabber ID: Device@jabber.ru
Спасибо сказали:
Sader
Сообщения: 121
ОС: Debian

Re: Делаем пакеты *.tgz

Сообщение Sader »

Всем,

В доках по checkinstall сказано, что программа не умеет отследивать действия трех типов бинарных пакетов:

# SUID programs
# SGID programs
# Statically linked binaries

каким образом можно определить какие это ? Пока все мои попытки ставить проги/делать пакеты с пом checkinstall(бинарники брал из моего Gentooшного будущего) оканчивались пакетом, в котором были только файлы описания и после-инсталляциолнные скрипты.

Спасибо,
OS:Debian Testing @ home - - Testing @ work
Home System: C2Q, MB GA-EX38-DS4, 4GB DDR2, 320GB HDD, ATI HD3870 512MB
Work System: HP Compaq nx9010
Спасибо сказали:
malor
Сообщения: 335

Re: Делаем пакеты *.tgz

Сообщение malor »

Пытался установить sim-0.9.3 в Slackware 10.2. Сделал ./configure, make. Затем:
# checkinstall -S

checkinstall 1.6.0, Copyright 2002 Felipe Eduardo Sanchez Diaz Duran
This software is released under the GNU GPL.
The package documentation directory ./doc-pak does not exist.
Should I create a default set of package docs? [y]: y

Preparing package documentation...OK

Please write a description for the package. Remember that pkgtool shows
only the first one when listing packages so make that one descriptive.

End your description with an empty line or EOF.
>> sim-0.9.3
>>

********************************************
**** Slackware package creation selected ***
********************************************
This package will be built according to these values:
1 - Summary: [ sim-0.9.3 ]
2 - Name: [ sim ]
3 - Version: [ 0.9.3 ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ Applications/System ]
7 - Architecture: [ i386 ]
8 - Source location: [ sim-0.9.3 ]
9 - Alternate source location: [ ]
10 - Requires: [ ]
Enter a number to change any of them or press ENTER to continue:

Installing with make install...

========== Installation results =========================
Making install in sim
make[1]: Entering directory `/root/install/sim-0.9.3/sim'
Making install in api
make[2]: Entering directory `/root/install/sim-0.9.3/sim/api'
make[3]: Entering directory `/root/install/sim-0.9.3/sim/api'
/bin/sh ../../admin/mkinstalldirs /opt/kde/lib
/bin/sh ../../libtool --silent --mode=install /usr/bin/ginstall -c -p libsimapi.la /opt/kde/lib/libsimapi.la
/usr/bin/ginstall: preserving times for `/opt/kde/lib/libsimapi.so.0.0.0': No such file or directory
/usr/bin/ginstall: cannot set time stamps for `/opt/kde/lib/libsimapi.so.0.0.0': No such file or directory
make[3]: *** [install-libLTLIBRARIES] Error 1
make[3]: Leaving directory `/root/install/sim-0.9.3/sim/api'
make[2]: *** [install-am] Error 2
make[2]: Leaving directory `/root/install/sim-0.9.3/sim/api'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/root/install/sim-0.9.3/sim'
make: *** [install-recursive] Error 1

**** Installation failed. Aborting package creation.

Cleaning up...OK
Bye.
Что делать и кто виноват?

Из файла INSTALL(раздел Basic Installation):
The simplest way to compile this package is:
1. `cd' to the directory containing the package's source code and type
`./configure' to configure the package for your system. If you're
using `csh' on an old version of System V, you might need to type
`sh ./configure' instead to prevent `csh' from trying to execute
`configure' itself.
Running `configure' takes a while. While running, it prints some
messages telling which features it is checking for.

2. Type `make' to compile the package.
3. Type `make install' to install the programs and any data files and
documentation.
4. You can remove the program binaries and object files from the
source code directory by typing `make clean'.
Спасибо сказали:
Аватара пользователя
estarchak
Сообщения: 1368
Статус: Оракловод

Re: Делаем пакеты *.tgz

Сообщение estarchak »

Выкиньте древность, попробкйте сим посвежее.
Дети любят тигра больше, чем Пржевальский лошадей. © Тимур Шаов.

Топик не читал, но внимательно просмотрел.
Спасибо сказали:
Аватара пользователя
kasak
Сообщения: 899
ОС: OpenBSD

Re: Делаем пакеты *.tgz

Сообщение kasak »

я бы смотрел в сторону `/opt/kde/lib/libsimapi.so.0.0.0'
попробуйте найти эту библиотеку, возможно у вас нет какого-то пакета
Linux kasak-pc 6.17.8-arch1-1 #1 SMP PREEMPT_DYNAMIC Fri, 14 Nov 2025 06:54:20 +0000 x86_64 GNU/Linux
Спасибо сказали:
malor
Сообщения: 335

Re: Делаем пакеты *.tgz

Сообщение malor »

В папке /opt/kde/lib нет файла libsimapi.so.0.0.0. Какой пакет его содержит?

Slackware 10.2.
Спасибо сказали:
Аватара пользователя
kasak
Сообщения: 899
ОС: OpenBSD

Re: Делаем пакеты *.tgz

Сообщение kasak »

туплю. libsimapi.so.0.0.0 это и есть файл от SIM
=\ скверная примета
Linux kasak-pc 6.17.8-arch1-1 #1 SMP PREEMPT_DYNAMIC Fri, 14 Nov 2025 06:54:20 +0000 x86_64 GNU/Linux
Спасибо сказали:
fixx
Сообщения: 430
Статус: индивид
ОС: fedora

Re: Делаем пакеты *.tgz

Сообщение fixx »

а где сам checkinstall взять?
Спасибо сказали:
Аватара пользователя
nesferato
Сообщения: 472
Статус: В изобилии!
ОС: Fedora, Slackware

Re: Делаем пакеты *.tgz

Сообщение nesferato »

Результат пропорционален осознанности.
Спасибо сказали:
Аватара пользователя
Virun
Сообщения: 83
ОС: Linux

Re: Делаем пакеты *.tgz

Сообщение Virun »

Хм....а у меня checkinstall никогда сам пакеты не ставит =\
Только предлогает ввести команду типа installpkg имя_пакета и все...да вообщем и нафиг нужно чтобы он их сам ставил =\
Спасибо сказали:
Аватара пользователя
bsod
Сообщения: 85
ОС: Zenwalk Linux 4.2

Re: Делаем пакеты *.tgz

Сообщение bsod »

Virun
аналогично....у мну тоже ничего не ставит....странно...
Спасибо сказали:
malor
Сообщения: 335

Re: Делаем пакеты *.tgz

Сообщение malor »

"Linux Сборник рецептов" К.Шредер, стр.71:"Checkinstall еще не позволяет создать пакет без его автоматической установки. Вероятно, эта возможность появится в будущих версиях"
2005 O'Reilly Media, Inc.
Спасибо сказали:
Аватара пользователя
Maverik
Сообщения: 498
ОС: Росинка mint 8

Re: Делаем пакеты *.tgz

Сообщение Maverik »

Делаю пакет p7zip при помощи checkinstall, он получается размером в 400 кб, работает,но распаковка средствами крузадера не действует, только c помощью ARK.
Собрал пакет используя make all3
make clean : to clean all directories
make : to build bin/7za
make sfx : to build bin/7zCon.sfx (7za can now create SFX archive)
make 7z : to build bin/7z and its plugins :
- "bin/7z.so" (GNU LGPL + AES code license)
- "bin/Codecs/Rar29.so" (GNU LGPL + unRAR restriction)
make 7zr : to build bin/7zr
make all : to build bin/7za and bin/7zCon.sfx
make all2 : to build bin/7za, bin/7z (with its plugins) and bin/7zCon.sfx
make all3 : to build bin/7za, bin/7z (with its plugins), bin/7zr and bin/7zCon.sfx
make test : to test bin/7za (extracting, archiving, password ...)
make test_7z : to test bin/7z (extracting, archiving, password ...)
make test_7zr : to test bin/7zr (extracting, archiving, ...)
и получил пакет размером в 1,5 м но работать он вообще не захотел
А пакет скачаный со http://www.slacky.eu/ весит 1,3 м и крузадер спакойно распаковывает.

?? Как нужно собирать пакет так чтоб он норм работал как скачаный со http://www.slacky.eu/
Dragon_Lord@jabber.org
Спасибо сказали:
Аватара пользователя
AG4
Сообщения: 47
ОС: Mandriva 2010.0

Re: Делаем пакеты *.tgz

Сообщение AG4 »

на slacky.eu рядом с пакетом лежат сорцы и слакбилд
а и еще.. Патрик выбросил из 12-ки checkinstall - сходи в каталог extra/checkinstall там описание этого, так что использовать checkinstall - не тру :)
Спасибо сказали:
Аватара пользователя
Maverik
Сообщения: 498
ОС: Росинка mint 8

Re: Делаем пакеты *.tgz

Сообщение Maverik »

Юзал SRC2PKG но это тож не тру
Хм а есть ли альтернатива слакбилду и чекинсталлу?
Dragon_Lord@jabber.org
Спасибо сказали:
Аватара пользователя
AG4
Сообщения: 47
ОС: Mandriva 2010.0

Re: Делаем пакеты *.tgz

Сообщение AG4 »

extra/slacktrack ... а вообще - слакбилды рулят, http://slackbuilds.org/
Спасибо сказали:
Аватара пользователя
Maverik
Сообщения: 498
ОС: Росинка mint 8

Re: Делаем пакеты *.tgz

Сообщение Maverik »

Собрал пакет при помощи слак билда. Вот что интересно там два мейк файла 486 и 686. Я то хотел собрать для 686 а собрался 486. Че там нада править чтоб 686 собрался?
Думаю здесь:
# p7zip does not take CXXFLAGS nor CFLAGS, so we have to hardcode
# them into special makefiles
if [ "$ARCH" = "i486" ]; then
cp -f $CWD/makefile.slackware-i486 ./makefile.machine
elif [ "$ARCH" = "i686" ]; then
cp -f $CWD/makefile.slackware-i686 ./makefile.machine
fi
Будет наверное так:
# p7zip does not take CXXFLAGS nor CFLAGS, so we have to hardcode
# them into special makefiles
if [ "$ARCH" = "i686" ]; then
cp -f $CWD/makefile.slackware-i686 ./makefile.machine
fi
Dragon_Lord@jabber.org
Спасибо сказали:
Аватара пользователя
cheer
Сообщения: 729
Статус: Самовлюблённый сноб
ОС: archlinux i686-current

Re: Делаем пакеты *.tgz

Сообщение cheer »

там выше в скрипте указано $ARCH=i486 по умолчанию.
Спасибо сказали:
Аватара пользователя
arkhnchul
Сообщения: 2284
Статус: Толчковый инженер
ОС: Debian, Fedora

Re: Делаем пакеты *.tgz

Сообщение arkhnchul »

у мну чекинсталл нормально работает...
он не устанавливает прогу - тока собирает пакет.
есть еще altertrack и slacktrack - тока они как-то медлено работают.
Losing is fun!
Спасибо сказали:
Аватара пользователя
Black
Сообщения: 1104
ОС: ArchLinux

Re: Делаем пакеты *.tgz

Сообщение Black »

Он устанавливает, потом установленное упаковывает в tgz и удаляет. При этом если стояла предыдущая версия того, что собирали, всё равно снесёт не глядя. Грабли.
Компьютер служит для решения тех проблем, которых до изобретения компьютера не существовало
Спасибо сказали:
Аватара пользователя
Full Null
Сообщения: 555
Статус: Продвинутый ламер
ОС: ArchLinux

Re: Делаем пакеты *.tgz

Сообщение Full Null »

Я пользуюсь bpkg. Автоматом генерит tar.gz, достаточно одной команды
Jabber: reiser_@jabber.ru
Я на LastFM: http://www.lastfm.ru/user/ReiserRUS
Спасибо сказали: