[Comm] помогите собрать... (webshots для linux'a)

Denis Nazarov marsden на mail.ru
Чт Янв 7 18:43:29 UTC 2010


В сообщении от Четверг 07 января 2010 23:35:04 автор Andrew Clark написал:
> On 07.01.2010 21:26, Denis Nazarov wrote:
> > кстати, пришлось написать
> > install -pDm755 ./usr/bin/myscript %buildroot%_bindir/%name
> > потому что иначе вываливался с ошибкой cannot stat. То есть архив у меня
> > уже с требуемой структурой папок - /usr/bin & /etc
> 
> Это странно, так как путь к сборочнице есть макрос %_builddir.
> Есть подозрение, что Вы что-то не так делаете.
вот... делаю архив из скрипта и конфига

[denis на host-37 ip]$ tar -cjvf desktop-tuning-1.0.tar.bz2 ./*
./desktop-tuning-1.0/                                       
./desktop-tuning-1.0/etc/                                   
./desktop-tuning-1.0/etc/ipinformer.conf                    
./desktop-tuning-1.0/usr/                                   
./desktop-tuning-1.0/usr/bin/                               
./desktop-tuning-1.0/usr/bin/ipinformer      

копирую               

[denis на host-37 ip]$ cp ./desktop-tuning-1.0.tar.bz2 ~/RPM/SOURCES/
cp: переписать `/home/denis/RPM/SOURCES/desktop-tuning-1.0.tar.bz2'? y

собираю

[denis на host-37 ip]$ cd ~/RPM/
[denis на host-37 RPM]$ rpmbuild -ba SPECS/desktop-tuning.spec 
Выполняется(%prep): /bin/sh -e /home/denis/tmp/rpm-tmp.21713
+ umask 022                                                 
+ /bin/mkdir -p /home/denis/RPM/BUILD                       
+ cd /home/denis/RPM/BUILD                                  
+ cd /home/denis/RPM/BUILD                                  
+ rm -rf desktop-tuning-1.0                                 
+ echo 'Source #0 (desktop-tuning-1.0.tar.bz2):'            
Source #0 (desktop-tuning-1.0.tar.bz2):                     
+ /bin/bzip2 -dc /home/denis/RPM/SOURCES/desktop-tuning-1.0.tar.bz2
+ /bin/tar -xf -                                                   
+ cd desktop-tuning-1.0
+ /bin/chmod -c -Rf u+rwX,go-w .
+ exit 0
Выполняется(%install): /bin/sh -e /home/denis/tmp/rpm-tmp.21713
+ umask 022
+ /bin/mkdir -p /home/denis/RPM/BUILD
+ cd /home/denis/RPM/BUILD
+ /bin/chmod -Rf u+rwX -- /home/denis/tmp/desktop-tuning-buildroot
+ /bin/rm -rf -- /home/denis/tmp/desktop-tuning-buildroot
+ cd desktop-tuning-1.0
+ install -pDm755 ./usr/bin/ipinformer /home/denis/tmp/desktop-tuning-
buildroot/usr/bin/ipinformer
+ install -pDm644 ./etc/ipinformer.conf /home/denis/tmp/desktop-tuning-
buildroot/etc/ipinformer.conf
+ /usr/lib/rpm/brp-alt
Cleaning files in /home/denis/tmp/desktop-tuning-buildroot (auto)
Verifying and fixing files in /home/denis/tmp/desktop-tuning-buildroot 
(binconfig,pkgconfig,libtool)
Compressing files in /home/denis/tmp/desktop-tuning-buildroot (auto)
Verifying ELF objects in /home/denis/tmp/desktop-tuning-buildroot 
(arch=normal,fhs=normal,rpath=normal,stack=normal,textrel=normal,unresolved=normal)
Stripping binaries in /home/denis/tmp/desktop-tuning-buildroot 
(executable,shared)
Обрабатываются файлы: desktop-tuning-1.0-alt0
Поиск Provides (используя /usr/lib/rpm/find-provides)
Выполняется(Provides): /bin/sh -e /home/denis/tmp/rpm-tmp.21713
+ umask 022
+ /bin/mkdir -p /home/denis/RPM/BUILD
+ cd /home/denis/RPM/BUILD
+ /usr/lib/rpm/find-provides
find-provides: running scripts 
(alternatives,lib,pam,perl,pkgconfig,python,shell)
+ exit 0
Поиск Requires (используя /usr/lib/rpm/find-requires)
Выполняется(Requires): /bin/sh -e /home/denis/tmp/rpm-tmp.14318
+ umask 022
+ /bin/mkdir -p /home/denis/RPM/BUILD
+ cd /home/denis/RPM/BUILD
+ /usr/lib/rpm/find-requires
find-requires: running scripts 
(files,lib,pam,perl,pkgconfig,pkgconfiglib,python,rpmlib,shebang,shell,static,symlinks)
/home/denis/tmp/desktop-tuning-buildroot/usr/bin/ipinformer syntax OK
+ exit 0
Provides: desktop-tuning
Requires: /usr/bin/perl, perl(File/Basename.pm), perl(IO/File.pm), 
perl(IO/Socket.pm), perl(POSIX.pm), perl(Sys/Syslog.pm)
Поиск unpackaged files (используя /usr/lib/rpm/check-files)
Выполняется(check-files): /bin/sh -e /home/denis/tmp/rpm-tmp.27696
+ umask 022
+ /bin/mkdir -p /home/denis/RPM/BUILD
+ cd /home/denis/RPM/BUILD
+ /usr/lib/rpm/check-files
+ exit 0
Записан: /home/denis/RPM/SRPMS/desktop-tuning-1.0-alt0.src.rpm
Записан: /home/denis/RPM/RPMS/noarch/desktop-tuning-1.0-alt0.noarch.rpm


вот сам спек

[denis на host-37 RPM]$ cat SPECS/desktop-tuning.spec

Summary: my utility and some system tunings after install desktop
Version: 1.0
Release: alt0
Name: desktop-tuning
License: GPL
Group: System/Configuration/Other
BuildArch: noarch
Provides: %name
Source: %name-%version.tar.bz2

%description
Some my system tunings and scripts :)

%description -l ru
Немного дополнительных системных настроек и скриптов :)

%prep
%setup

%install
install -pDm755 ./usr/bin/ipinformer %buildroot%_bindir/ipinformer
install -pDm644 ./etc/ipinformer.conf %buildroot%_sysconfdir/ipinformer.conf


%files
%_bindir/ipinformer
%_sysconfdir/ipinformer.conf

%changelog

если в install не указать ./usr/bin/ipinformer - то возникает ошибка, 
поскольку архив распаковывается, учитывая структуру каталогов


Подробная информация о списке рассылки community