LINUX.ORG.RU

сделать простенький rpm-пакет - v2


0

0

Следую инструкция из этого поста (в кратце - нужно упаковать несколько бинарных кодеков в rpm) http://www.linux.org.ru/view-message.jsp?msgid=2123849 написал следующий спек-файл voxware-codecs.spec:

***************************************************
Name: voxware-codecs
Summary: VoxWare MetaSound win32 binary audio codec
Group: Misc
Version: 1.6.0
Release: 17
License: unknown
BuildRoot: /home/benderamp/work/myrpm/voxware/root
Packager: benderamp

#Requires:

%description
VoxWare MetaSound win32 binary audio codec

%prep /bin/true

%build /bin/true

%install /bin/true

%clean /bin/true

%files
/usr/lib/win32/vct3216.acm
/usr/lib/win32/voxmsdec.ax
/usr/lib/win32/voxmvdec.ax
/usr/lib/win32/vct3216.dll
/usr/lib/win32/voxacm.inf
/usr/lib/win32/msms001.vwp
/usr/lib/win32/mvoice.vwp
***************************************************

в каталог /home/benderamp/work/myrpm/voxware/root (который указан как buildroot) положил все нужные файлы:
/home/benderamp/work/myrpm/voxware/root/usr/lib/win32/vct3216.acm
/home/benderamp/work/myrpm/voxware/root/usr/lib/win32/voxmsdec.ax
/home/benderamp/work/myrpm/voxware/root/usr/lib/win32/voxmvdec.ax
/home/benderamp/work/myrpm/voxware/root/usr/lib/win32/vct3216.dll
/home/benderamp/work/myrpm/voxware/root/usr/lib/win32/voxacm.inf
/home/benderamp/work/myrpm/voxware/root/usr/lib/win32/msms001.vwp
/home/benderamp/work/myrpm/voxware/root/usr/lib/win32/mvoice.vwp

запускаю rpmbuild -bb voxware-codecs.spec и получаю слудующий вывод:

***********************************************
~/work/myrpm/voxware> rpmbuild -bb voxware-codecs.spec
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.40875
+ umask 022
+ cd /usr/src/packages/BUILD
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.40875
+ umask 022
+ cd /usr/src/packages/BUILD
+ /bin/rm -rf /home/benderamp/work/myrpm/voxware/root
++ dirname /home/benderamp/work/myrpm/voxware/root
+ /bin/mkdir -p /home/benderamp/work/myrpm/voxware
+ /bin/mkdir /home/benderamp/work/myrpm/voxware/root
+ exit 0
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.40875
+ umask 022
+ cd /usr/src/packages/BUILD
+ /usr/lib/rpm/brp-lib64-linux
sf@suse.de: if you find problems with this script, drop me a note
+ RPM_BUILD_ROOT=/home/benderamp/work/myrpm/voxware/root
+ export RPM_BUILD_ROOT
+ test -x /usr/sbin/Check -a 1000 = 0 -o -x /usr/sbin/Check -a '!' -z /home/benderamp/work/myrpm/voxware/root
+ echo 'I call /usr/sbin/Check...'
I call /usr/sbin/Check...
+ /usr/sbin/Check
Checking permissions and ownerships - using the permissions files
/tmp/Check.perms.t13015
setting /home/benderamp/work/myrpm/voxware/root/ to root:root 0755. (wrong owner/group benderamp:users)
+ /usr/lib/rpm/brp-compress
+ /usr/lib/rpm/brp-symlink
Processing files: voxware-codecs-1.6.0-17
error: File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/vct3216.acm
error: File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/voxmsdec.ax
error: File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/voxmvdec.ax
error: File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/vct3216.dll
error: File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/voxacm.inf
error: File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/msms001.vwp
error: File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/mvoice.vwp


RPM build errors:
File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/vct3216.acm
File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/voxmsdec.ax
File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/voxmvdec.ax
File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/vct3216.dll
File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/voxacm.inf
File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/msms001.vwp
File not found: /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/mvoice.vwp
***********************************************

буквально он делает слудующее:
+ /bin/rm -rf /home/benderamp/work/myrpm/voxware/root

а потом сам же пытается искать в этом каталоге нужные файлы. Что я сделал не правильно? Еще - хочу, чтобы все действия происходили в рамках каталога "/home/benderamp/work/myrpm/voxware" без всяких /usr/src/rpm и пр.

спасибо

★★★★★

>в каталог /home/benderamp/work/myrpm/voxware/root (который указан как buildroot) положил все нужные файлы:

Ну и кто так делает? %install для чего нужен?

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

Сделал такую секцию %install

%install
mkdir /home/benderamp/work/myrpm/voxware/root/usr
mkdir /home/benderamp/work/myrpm/voxware/root/usr/lib
mkdir /home/benderamp/work/myrpm/voxware/root/usr/lib/win32
cp /home/benderamp/work/myrpm/voxware/install/usr/lib/win32/vct3216.acm /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/
cp /home/benderamp/work/myrpm/voxware/install/usr/lib/win32/voxmsdec.ax /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/
cp /home/benderamp/work/myrpm/voxware/install/usr/lib/win32/voxmvdec.ax /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/
cp /home/benderamp/work/myrpm/voxware/install/usr/lib/win32/vct3216.dll /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/
cp /home/benderamp/work/myrpm/voxware/install/usr/lib/win32/voxacm.inf /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/
cp /home/benderamp/work/myrpm/voxware/install/usr/lib/win32/msms001.vwp /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/
cp /home/benderamp/work/myrpm/voxware/install/usr/lib/win32/mvoice.vwp /home/benderamp/work/myrpm/voxware/root/usr/lib/win32/

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

bender ★★★★★
() автор топика

buildroot перед запуском rpm-build вычищается полностью

birdie ★★★★★
()

а за VoxwareMetasound я бы разработчикам рыло начистил (в x86-64 до сих пор не работает).

sda00 ★★★
()
Ответ на: комментарий от bender

Мда, сбил я вас с пути истинного :) Со времен RedHat 9.0 rpm не собирал... Специально для вас нашел еще работающий RH9.0, там ваш .spec-файл работает замечательно... А потом уже добавили очистку BuildRoot до и после секций %install и %clean соответственно...

mky ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.