Страница 1 из 1

Сборка пакетов без установки в систему

Добавлено: 2008-09-20 8:47:59
iZEN
Возможно ли собрать из порта бинарный пакет без установки в систему.

Второй вопрос. Можно ли собрать бинарный пакет из уже установленного из порта ПО?

Re: Сборка пакетов без установки в систему

Добавлено: 2008-09-20 8:51:48
zingel
можно

можно

Re: Сборка пакетов без установки в систему

Добавлено: 2008-09-20 10:04:24
iZEN
zingel писал(а):можно
какая команда?
zingel писал(а):можно
какая команда?

Re: Сборка пакетов без установки в систему

Добавлено: 2008-09-20 10:33:44
zingel
1)

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

cd /path && tar xf somefucking.tar.gz && cd somefucking/;
./configure --path=./somefucking && make && make install
2)

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

make package

Re: Сборка пакетов без установки в систему

Добавлено: 2008-09-20 17:44:43
gloom
выдержка из man ports вроде то что надо

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

package          Make a binary package for the port.  The port will be
                      installed if it has not already been.  The package is a
                      .tbz file that you can use to install the port on other
                      machines with pkg_add(1).  If the directory specified by
                      PACKAGES does not exist, the package will be put into
                      the current directory.  See PKGREPOSITORY and PKGFILE.

     package-recursive
                      Like package, but makes a package for each depending
                      port as well.

Re: Сборка пакетов без установки в систему

Добавлено: 2008-09-20 21:12:22
dikens3
iZEN писал(а):Возможно ли собрать из порта бинарный пакет без установки в систему.
make package
iZEN писал(а):Второй вопрос. Можно ли собрать бинарный пакет из уже установленного из порта ПО?
pkg_create

Re: Сборка пакетов без установки в систему

Добавлено: 2008-09-20 22:29:08
iZEN
dikens3 писал(а):
iZEN писал(а):Возможно ли собрать из порта бинарный пакет без установки в систему.
make package
Эта команда инсталлирует ПО в систему, сразу после этого собирает бинарный пакет. :roll:

Re: Сборка пакетов без установки в систему

Добавлено: 2008-09-20 22:58:54
Alex Keda
значит до кучи

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

pkg_delete 

Re: Сборка пакетов без установки в систему

Добавлено: 2008-09-21 8:00:50
dikens3
Эта команда инсталлирует ПО в систему, сразу после этого собирает бинарный пакет
Я почему-то думал что это делает make install

Re: Сборка пакетов без установки в систему

Добавлено: 2008-09-21 8:29:50
zg
zg# pwd
/usr/ports/x11-clocks/stopwatch
zg# make package
....
===> Building package for stopwatch-3.5_1
Creating package /usr/ports/x11-clocks/stopwatch/stopwatch-3.5_1.tbz
Registering depends: tk-wrapper-1.1 tk-8.4.19,2 libX11-1.1.3_1,1 libXau-1.0.3_2 libXdmcp-1.0.2_1 xproto-7.0.10_1 pkg-config-0.23_1 tcl-8.4.19,1 kbproto-1.0.3.
Creating bzip'd tar ball in '/usr/ports/x11-clocks/stopwatch/stopwatch-3.5_1.tbz'
zg# pkg_info | grep stopwatch
stopwatch-3.5_1 Stopwatch enables hand timing much like a physical stopwatc
zg#
он сначала ставит, а потом пакет собирает

Re: Сборка пакетов без установки в систему

Добавлено: 2008-09-21 8:32:42
zg
lissyara писал(а):значит до кучи

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

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

Re: Сборка пакетов без установки в систему

Добавлено: 2008-09-21 11:04:10
Alex Keda
без установки зависимостей не поставишь пакет и не соберёшь
до кучи приёдтся освоить

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

pkg_info 

Re: Сборка пакетов без установки в систему

Добавлено: 2008-10-20 9:36:25
iZEN
gloom писал(а):выдержка из man ports вроде то что надо

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

     package-recursive
                      Like package, but makes a package for each depending
                      port as well.
Вот спасибо!
Это то, что нужно в конкретном случае: команда "make package-recursive", запущенная в каталоге cd /usr/ports/net-p2p/transmission/, собрала из УЖЕ установленного ПО в пакеты мне чуть ли не треть установленных портов
(в каталоге /usr/ports/packages/All/ лежат 119 файлов бинарных пакетов, при этом общее число установленных портов 623). :cf:

А как сделать так, чтобы при апгрейде порта также собирался и бинарный пакет?
Нашёл: % portupgrade -p portname-oldversion

Апгрейдит всё установленное ПО и строит бинарные пакеты
% portupgrade -ap

Чтобы апгрейдить порт, но сохранить старую версию ПО в бинарном пакете
% portupgrade -b portname-oldversion