ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] Сборка RPM пользователем
@ 2003-01-25  1:22 Алексей Волков
  2003-01-25  9:51 ` Vitaly Lipatov
  0 siblings, 1 reply; 11+ messages in thread
From: Алексей Волков @ 2003-01-25  1:22 UTC (permalink / raw)
  To: community

Не удается собрать RPM из-под пользователя

~/.rpmmacros:
%_topdir /home/user/.rpm
%_tmppath %{_topdir}/TMP
%buildroot %_tmppath/%name-%version-build

some.spec:
<skipped/>

%build
perl Makefile.PL
make
make test

%install
rm -rf $RPM_BUILD_ROOT
%makeinstall PREFIX="$RPM_BUILD_ROOT"%{_prefix} INSTALLDIRS=site

%files
%defattr (-,root,root)
%doc README
/usr/lib/perl5/site_perl/5.6.1/Some/Module.pm

Все стадии (до install) проходят успешно, make install
выполняется без проблем, 
Обрабатываются файлы: perl-Some-Module-0.1-1
ошибка: Файл не найден: /usr/lib/perl5/site_perl/5.6.1/Some/Module.pm


Если изменить секцию %file таким образом:
%file
%builddir/usr/lib/perl5/site_perl/5.6.1/Some/Module.pm
рпм создаётся с файлами /home/user/.rpm/TMP/....

Куда копать? Заранее благодарен
PS:
atmsk.ru просветления не дал
система redhat-7.3

есть вариант:
%install
%makeinstall PREFIX="$RPM_BUILD_ROOT"%{_prefix} INSTALLDIRS=site
find %buildroot| sed 's/^%buildroot//g' > filelist

%files -f filelist

но он мне не кажется "правильным", да и изящным его не назовешь.


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] Сборка RPM пользователем
  2003-01-25  1:22 [Comm] Сборка RPM пользователем Алексей Волков
@ 2003-01-25  9:51 ` Vitaly Lipatov
  2003-01-26 11:53   ` alv
  0 siblings, 1 reply; 11+ messages in thread
From: Vitaly Lipatov @ 2003-01-25  9:51 UTC (permalink / raw)
  To: community

On 25 Январь 2003 04:22, Алексей Волков wrote:
> %buildroot %_tmppath/%name-%version-build
Не надо самому определять buildroot

>
> %install
> rm -rf $RPM_BUILD_ROOT
эту строчку не нужно писать (rm)

> %makeinstall PREFIX="$RPM_BUILD_ROOT"%{_prefix}
В prefix уже содержится RPM_BUILD_ROOT, добавлять его не надо.

> INSTALLDIRS=site
>
> %files
> %defattr (-,root,root)
> %doc README
> /usr/lib/perl5/site_perl/5.6.1/Some/Module.pm
>
> Все стадии (до install) проходят успешно, make install
Что после этого содержится в каталоге $RPM_BUILD_ROOT 
(где-то там в /home/user/.rpm/tmp)

> выполняется без проблем,
> Обрабатываются файлы: perl-Some-Module-0.1-1
> ошибка: Файл не найден:
> /usr/lib/perl5/site_perl/5.6.1/Some/Module.pm
>
>
> Если изменить секцию %file таким образом:
> %file
В смысле, files?

> %builddir/usr/lib/perl5/site_perl/5.6.1/Some/Module.pm
Так не надо.
> рпм создаётся с файлами /home/user/.rpm/TMP/....

-- 
Lav
Виталий Липатов
Санкт-Петербург
GNU! ALT Linux Team! LaTeX! LyX!


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] Сборка RPM пользователем
  2003-01-25  9:51 ` Vitaly Lipatov
@ 2003-01-26 11:53   ` alv
  2003-01-26 18:39     ` Vitaly Lipatov
  0 siblings, 1 reply; 11+ messages in thread
From: alv @ 2003-01-26 11:53 UTC (permalink / raw)
  To: community

On Sat, Jan 25, 2003 at 12:51:36PM +0300, Vitaly Lipatov wrote:
> On 25 Январь 2003 04:22, Алексей Волков wrote:
> > %buildroot %_tmppath/%name-%version-build
> Не надо самому определять buildroot
тогда RPM_BUILD_ROOT будет ""

> > %install
> > rm -rf $RPM_BUILD_ROOT
> эту строчку не нужно писать (rm)
взято из спеков, думаю не в этом суть

> > %makeinstall PREFIX="$RPM_BUILD_ROOT"%{_prefix}
> В prefix уже содержится RPM_BUILD_ROOT, добавлять его не надо.
_prefix=/usr

Может правильнее /usr/local?

> > Все стадии (до install) проходят успешно, make install
> Что после этого содержится в каталоге $RPM_BUILD_ROOT 
> (где-то там в /home/user/.rpm/tmp)
полное дерево установки: /usr/{bin,share,} и тд - всё что надо

Единственый действенный способ - 
явно указать в спеке BuildRoot, например:
BuildRoot: %{_tmppath}/%{name}-root
после этого пакет собирается на ура.

Насколько это "правильно"?

попробовал скачать src.rpm из сизифа - тоже самое
Неужели так сильно отличается rpm-build в RedHate и AltLinux?

также при сборке tkabber замечено что, в redhat-7.3 нет
макросов/определений, которые по-видимому присутствуют в altlinux'е:
%_iconsdir
%_miconsdir
%_liconsdir
%update_menus
%clean_menus


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] Сборка RPM пользователем
  2003-01-26 11:53   ` alv
@ 2003-01-26 18:39     ` Vitaly Lipatov
  2003-01-28  1:52       ` [Comm] " Michael Shigorin
  0 siblings, 1 reply; 11+ messages in thread
From: Vitaly Lipatov @ 2003-01-26 18:39 UTC (permalink / raw)
  To: community

On 26 Январь 2003 14:53, alv@pisem.net wrote:
> On Sat, Jan 25, 2003 at 12:51:36PM +0300, Vitaly Lipatov wrote:
> > On 25 Январь 2003 04:22, Алексей Волков wrote:
> > > %buildroot %_tmppath/%name-%version-build
> >
> > Не надо самому определять buildroot
>
> тогда RPM_BUILD_ROOT будет ""
Я плохо прочитал что вы работаете с redhat.
Там надо всё это определять, но я не знаю ничего.
>
> _prefix=/usr
>
> Может правильнее /usr/local?
Для программ в пакетах не принято использовать /usr/local
>
> > > Все стадии (до install) проходят успешно, make install
> >
> > Что после этого содержится в каталоге $RPM_BUILD_ROOT
> > (где-то там в /home/user/.rpm/tmp)
>
> полное дерево установки: /usr/{bin,share,} и тд - всё что надо
>
> Единственый действенный способ -
> явно указать в спеке BuildRoot, например:
> BuildRoot: %{_tmppath}/%{name}-root
> после этого пакет собирается на ура.
>
> Насколько это "правильно"?
Для ALT-дистрибутивов - категорически неправильно.
Для redhat - похоже, по-другому не умеют.
>
> попробовал скачать src.rpm из сизифа - тоже самое
> Неужели так сильно отличается rpm-build в RedHate и AltLinux?
Да.
>
> также при сборке tkabber замечено что, в redhat-7.3 нет
> макросов/определений, которые по-видимому присутствуют в
> altlinux'е: %_iconsdir
> %_miconsdir
> %_liconsdir
> %update_menus
> %clean_menus
Не самый лучший вариант пользоваться для пакетов из Сизифа 
rpm-build из redhat.

-- 
Lav
Виталий Липатов
Санкт-Петербург
GNU! ALT Linux Team! LaTeX! LyX!


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Comm] Re: Сборка RPM пользователем
  2003-01-26 18:39     ` Vitaly Lipatov
@ 2003-01-28  1:52       ` Michael Shigorin
  2003-01-29  0:11         ` jellyfish
  0 siblings, 1 reply; 11+ messages in thread
From: Michael Shigorin @ 2003-01-28  1:52 UTC (permalink / raw)
  To: community

On Sun, Jan 26, 2003 at 09:39:37PM +0300, Vitaly Lipatov wrote:
> Не самый лучший вариант пользоваться для пакетов из Сизифа 
> rpm-build из redhat.

Скажем так: тогда надо или тащить макросы (которые уже
расползаются по macros.d/ и пакетам соотв.), или выкидывать
куски.

Я подумывал сделать что-то на базе rpm -bE spec с целью "утащить
на rh", но, в общем, проще сходить на rpmfind.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Comm] Re: Сборка RPM пользователем
  2003-01-28  1:52       ` [Comm] " Michael Shigorin
@ 2003-01-29  0:11         ` jellyfish
  2003-01-29  9:16           ` Alexander Bokovoy
  0 siblings, 1 reply; 11+ messages in thread
From: jellyfish @ 2003-01-29  0:11 UTC (permalink / raw)
  To: community

On Tue, Jan 28, 2003 at 03:52:23AM +0200, Michael Shigorin wrote:
> Скажем так: тогда надо или тащить макросы (которые уже
> расползаются по macros.d/ и пакетам соотв.), или выкидывать
> куски.
хочется большей стандартизации :(

> Я подумывал сделать что-то на базе rpm -bE spec с целью "утащить
> на rh", но, в общем, проще сходить на rpmfind.
не совсем и не всегда
например есть пакет называется tkabber (TCL клиент для Jabber'a)
rpmfind.net его не находит
(Дядюшка Гугл вразумительно кивает только в сторону 
altlinux и debian)

вариантов остаётся не много
make install
или
rpm -bb

да и свои пакеты иногда надо собирать :)

В тех спеках от redhat, которые я видел, есть:
BuildRoot: xxxxx 
варианты разные, но BuildRoot _везде_ присутствует

On Sun, Jan 26, 2003 at 09:39:37PM +0300, Vitaly Lipatov wrote:
> Не самый лучший вариант пользоваться для пакетов из Сизифа 
> rpm-build из redhat.

Налицо ситуация, когда дистрибутивы не совсем совместимы на уровне
исходных пакетов _одного формата_. Это, на мой взгляд, сдерживает
развитие и распростанение linux.

С другой стороны, некоторые аспекты, тоже включение в спек BuildRoot,
являются принципиальными.


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] Re: Сборка RPM пользователем
  2003-01-29  0:11         ` jellyfish
@ 2003-01-29  9:16           ` Alexander Bokovoy
  2003-01-30  0:07             ` Michael Shigorin
  0 siblings, 1 reply; 11+ messages in thread
From: Alexander Bokovoy @ 2003-01-29  9:16 UTC (permalink / raw)
  To: community

On Wed, Jan 29, 2003 at 03:11:49AM +0300, jellyfish@pisem.net wrote:
> да и свои пакеты иногда надо собирать :)
> 
> В тех спеках от redhat, которые я видел, есть:
> BuildRoot: xxxxx 
> варианты разные, но BuildRoot _везде_ присутствует
Это проблема тех, кто собирает под RH. В нормальной системе BuildRoot 
должен вычисляться автоматически.

> On Sun, Jan 26, 2003 at 09:39:37PM +0300, Vitaly Lipatov wrote:
> > Не самый лучший вариант пользоваться для пакетов из Сизифа 
> > rpm-build из redhat.
> 
> Налицо ситуация, когда дистрибутивы не совсем совместимы на уровне
> исходных пакетов _одного формата_. Это, на мой взгляд, сдерживает
> развитие и распростанение linux.
В RPM-based системах и не говорят об унификации макросов, это просто
пока невозможно. Это не специфицируется никем -- ни разработчиками RPM, ни
дистрибутивописателями. Конечно, речь идет о междистрибутивной унификации.

Причиной этому является разность в моделях разработки и используемых
сборочных инфраструктурах. К примеру, сборочная инфраструктура RedHat
скрыта от посторонних (нас с Вами) глаз и является некоторым секретом
компании RedHat, намеки на который иногда можно получить от Jeff'а в
рассылке по rpm.

Аналогично и с использующими RPM для своих пакетов SuSE и Conectiva.

С другой стороны, ALT Linux и MandrakeSoft своих сборочных сред не
скрывают. Наши макросы и сам RPM, кстати, унифицированы по многим
параметрам с Openwall и это для нас интереснее и важнее эфемерной
"совместимости" с RedHat.

Почитайте http://docs.altlinux.ru/alt/devel/ch01.html

-- 
/ Alexander Bokovoy
---
Daemons did it


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Comm] Re: Сборка RPM пользователем
  2003-01-29  9:16           ` Alexander Bokovoy
@ 2003-01-30  0:07             ` Michael Shigorin
  2003-01-30  8:06               ` Alexander Bokovoy
  0 siblings, 1 reply; 11+ messages in thread
From: Michael Shigorin @ 2003-01-30  0:07 UTC (permalink / raw)
  To: community

On Wed, Jan 29, 2003 at 11:16:24AM +0200, Alexander Bokovoy wrote:
> > варианты разные, но BuildRoot _везде_ присутствует
> Это проблема тех, кто собирает под RH. В нормальной системе
> BuildRoot должен вычисляться автоматически.

Саша, так и проблемы с SMB/CIFS -- зачастую всего лишь проблемы
тех, что работает с MS CIFS -- no? ;-)

> Наши макросы и сам RPM, кстати, унифицированы по многим
> параметрам с Openwall и это для нас интереснее и важнее

Кстати, при выборе для прототипа между спеками mdk и pld все чаще
наблюдаю за собой выбор в пользу PLD и удивляюсь некоторым
схожестям -- и некоторым "интересно-у-нас-это-будет?" ;-)

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] Re: Сборка RPM пользователем
  2003-01-30  0:07             ` Michael Shigorin
@ 2003-01-30  8:06               ` Alexander Bokovoy
  2003-01-30  8:19                 ` Michael Shigorin
  0 siblings, 1 reply; 11+ messages in thread
From: Alexander Bokovoy @ 2003-01-30  8:06 UTC (permalink / raw)
  To: community

On Thu, Jan 30, 2003 at 02:07:45AM +0200, Michael Shigorin wrote:
> On Wed, Jan 29, 2003 at 11:16:24AM +0200, Alexander Bokovoy wrote:
> > > варианты разные, но BuildRoot _везде_ присутствует
> > Это проблема тех, кто собирает под RH. В нормальной системе
> > BuildRoot должен вычисляться автоматически.
> 
> Саша, так и проблемы с SMB/CIFS -- зачастую всего лишь проблемы
> тех, что работает с MS CIFS -- no? ;-)
Это немного другое. В этой области нет писанного стандарта -- стандартом
является код серверов и клиентов. Это очень специфическое поведение, не
свойственное отрасли в целом.

> > Наши макросы и сам RPM, кстати, унифицированы по многим
> > параметрам с Openwall и это для нас интереснее и важнее
> 
> Кстати, при выборе для прототипа между спеками mdk и pld все чаще
> наблюдаю за собой выбор в пользу PLD и удивляюсь некоторым
> схожестям -- и некоторым "интересно-у-нас-это-будет?" ;-)
Да. PLD интересен.

-- 
/ Alexander Bokovoy
---
Where am I?  Who am I?  Am I?  I


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Comm] Re: Сборка RPM пользователем
  2003-01-30  8:06               ` Alexander Bokovoy
@ 2003-01-30  8:19                 ` Michael Shigorin
  2003-01-30  8:32                   ` Alexander Bokovoy
  0 siblings, 1 reply; 11+ messages in thread
From: Michael Shigorin @ 2003-01-30  8:19 UTC (permalink / raw)
  To: community

On Thu, Jan 30, 2003 at 10:06:30AM +0200, Alexander Bokovoy wrote:
> > > BuildRoot должен вычисляться автоматически.
> > Саша, так и проблемы с SMB/CIFS -- зачастую всего лишь проблемы
> > тех, что работает с MS CIFS -- no? ;-)
> Это немного другое. В этой области нет писанного стандарта --
> стандартом является код серверов и клиентов. Это очень
> специфическое поведение, не свойственное отрасли в целом.

Вот.  А кому чего должен BuildRoot?

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] Re: Сборка RPM пользователем
  2003-01-30  8:19                 ` Michael Shigorin
@ 2003-01-30  8:32                   ` Alexander Bokovoy
  0 siblings, 0 replies; 11+ messages in thread
From: Alexander Bokovoy @ 2003-01-30  8:32 UTC (permalink / raw)
  To: community

On Thu, Jan 30, 2003 at 10:19:05AM +0200, Michael Shigorin wrote:
> On Thu, Jan 30, 2003 at 10:06:30AM +0200, Alexander Bokovoy wrote:
> > > > BuildRoot должен вычисляться автоматически.
> > > Саша, так и проблемы с SMB/CIFS -- зачастую всего лишь проблемы
> > > тех, что работает с MS CIFS -- no? ;-)
> > Это немного другое. В этой области нет писанного стандарта --
> > стандартом является код серверов и клиентов. Это очень
> > специфическое поведение, не свойственное отрасли в целом.
> Вот.  А кому чего должен BuildRoot?
BuildRoot -- один из самых непереносимых тегов в RPM. Зачем нужен тег,
значение которого при каждой сборке на разных машинах даже в пределах
одного дистрибутива может быть разным?
-- 
/ Alexander Bokovoy
---
You single-handedly fought your way into this hopeless mess.


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2003-01-30  8:32 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-01-25  1:22 [Comm] Сборка RPM пользователем Алексей Волков
2003-01-25  9:51 ` Vitaly Lipatov
2003-01-26 11:53   ` alv
2003-01-26 18:39     ` Vitaly Lipatov
2003-01-28  1:52       ` [Comm] " Michael Shigorin
2003-01-29  0:11         ` jellyfish
2003-01-29  9:16           ` Alexander Bokovoy
2003-01-30  0:07             ` Michael Shigorin
2003-01-30  8:06               ` Alexander Bokovoy
2003-01-30  8:19                 ` Michael Shigorin
2003-01-30  8:32                   ` Alexander Bokovoy

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git