Автор Тема: Вопрос по правильному написанию спеков  (Прочитано 14828 раз)

ALtNovice

  • Гость
имеется Q7z...tar.gz
После распаковки вижу следующее
там make file лежит в /usr/share/Q7Z/Build
а исходники в/usr/share/Q7Z/Source

создал каталог RPM в домашней папке и в нём ещё катологи (SOURCES, BUILD, RPM и т .д)
положил этот архив в SOURCES.
Решил попробовать написать спек на основе спека Qutim
вот что у меня вышло:
%define cname Q7Z
%define _unpackaged_files_terminate_build 1


Name: Q7z
Epoch: 2
Version: 0.75
Release: alt5.alpha
Provides: %name = %version
Obsoletes: K7z
Summary: Q7Z p7zip gui
License: GPL
Group: Applications/Archiving
Url: http://k7z.sourceforge.net/
Source: %name-%version.tar.gz


Packager: Anonymous


BuildRequires: qt4-devel >= 4.4.1, python-module-PyQt4 >= 4.4.3, make >= 3.80

%description
qutIM - p7z gui

%prep
%setup -n %name-%version
%build
cd usr/share/Q7Z/Build/
CFLAGS="%optflags" \
CXXFLAGS="%optflags" \
%make_build

%install
mkdir -p %buildroot
cd usr/share/Q7Z/Build/
%makeinstall DESTDIR=%buildroot install
Всё более или менее собралось в src.rpm а как дальше?
подозреваю, что что-то неправильно указал в секции %install

Вот как собиралось:
[kostya_hm@Athlon-XP-9841db SPECS]$ rpm -ba Q7z_0.spec
Выполняется(%prep): /bin/sh -e /home/kostya_hm/tmp/rpm-tmp.48738
+ umask 022                                                    
+ /bin/mkdir -p /home/kostya_hm/RPM/BUILD                      
+ cd /home/kostya_hm/RPM/BUILD                                 
+ cd /home/kostya_hm/RPM/BUILD                                 
+ rm -rf Q7z-0.75                                              
+ echo 'Source #0 (Q7z-0.75.tar.gz):'                          
Source #0 (Q7z-0.75.tar.gz):                                   
+ /bin/gzip -dc /home/kostya_hm/RPM/SOURCES/Q7z-0.75.tar.gz    
+ /bin/tar -xf -                                               
+ cd Q7z-0.75                                                  
+ /bin/chmod -c -Rf u+rwX,go-w .                               
+ exit 0                                                       
Выполняется(%build): /bin/sh -e /home/kostya_hm/tmp/rpm-tmp.48738
+ umask 022                                                     
+ /bin/mkdir -p /home/kostya_hm/RPM/BUILD                       
+ cd /home/kostya_hm/RPM/BUILD                                  
+ cd Q7z-0.75                                                   
+ cd usr/share/Q7Z/Build/                                       
+ CFLAGS='-pipe -Wall -O2 -march=athlon -mtune=athlon-xp'       
+ CXXFLAGS='-pipe -Wall -O2 -march=athlon -mtune=athlon-xp'     
+ '[' -n '' ']'                                                 
+ NPROCS=1                                                      
+ make -j1                                                      
make: Entering directory `/home/kostya_hm/RPM/BUILD/Q7z-0.75/usr/share/Q7Z/Build'
/usr/bin/pyuic4 ../Source/Main.ui -o ../Source/Ui_Main.py                       
/usr/bin/pyrcc4 ../Source/Main.qrc -o ../Source/Main_rc.py                      
/usr/bin/pyuic4 ../Source/Settings.ui -o ../Source/Ui_Settings.py               
/usr/bin/pyrcc4 ../Source/Settings.qrc -o ../Source/Settings_rc.py              

Before installing Q7Z, see the documentation for more info.

make: Leaving directory `/home/kostya_hm/RPM/BUILD/Q7z-0.75/usr/share/Q7Z/Build'
+ exit 0                                                                       
Выполняется(%install): /bin/sh -e /home/kostya_hm/tmp/rpm-tmp.64961            
+ umask 022                                                                    
+ /bin/mkdir -p /home/kostya_hm/RPM/BUILD                                      
+ cd /home/kostya_hm/RPM/BUILD                                                 
+ /bin/chmod -Rf u+rwX -- /home/kostya_hm/tmp/Q7z-buildroot                    
+ /bin/rm -rf -- /home/kostya_hm/tmp/Q7z-buildroot                             
+ cd Q7z-0.75                                                                  
+ mkdir -p /home/kostya_hm/tmp/Q7z-buildroot                                   
+ cd usr/share/Q7Z/Build/
+ /usr/lib/rpm/brp-alt
Cleaning files in /home/kostya_hm/tmp/Q7z-buildroot (auto)
Verifying and fixing files in /home/kostya_hm/tmp/Q7z-buildroot (binconfig,pkgconfig,libtool)
Compressing files in /home/kostya_hm/tmp/Q7z-buildroot (auto)
Verifying ELF objects in /home/kostya_hm/tmp/Q7z-buildroot (arch=normal,fhs=normal,rpath=normal,stack=normal,textrel=normal,unresolved=normal)
Stripping binaries in /home/kostya_hm/tmp/Q7z-buildroot (executable,shared)
предупреждение: Не удалось определить каноническое имя компьютера: Athlon-XP-9841db.localdomain
Записан: /home/kostya_hm/RPM/SRPMS/Q7z-0.75-alt5.alpha.src.rpm
« Последнее редактирование: 25.03.2009 13:32:39 от ALtNovice »

Оффлайн aus

  • Участник
  • *
  • Сообщений: 152

ALtNovice

  • Гость
hasher-priv: /: bad perms: 775                                                                                             
hsh: hasher-priv getconf failed.

Drool

  • Гость
Если src.rpm есть, то читаем дальше...

При чем тут хашер? Человек собирал командой rpm -ba, она собирает как src.rpm, так и rpm-пакет. Просто у него в спеке (если он процитирован весь) отсутствует секция %files, вот потому и собрался только src.rpm.

ALtNovice

  • Гость
В %files  что нужно дописывать?

Drool

  • Гость
hasher-priv: /: bad perms: 775                                                                                             
hsh: hasher-priv getconf failed.

А Вы после установки хашера сделали
hasher-useradd имя_юзера
и после этого перелогинились?

ALtNovice

  • Гость

Drool

  • Гость
В %files  что нужно дописывать?

Те файлы, которые должны попасть в готовый rpm-пакет. Посмотрите в том же спеке от qutim.

Drool

  • Гость
Да

В таком случае приведите полностью какие команды приводят к этим ошибкам.

ALtNovice

  • Гость
hasher-useradd kostya_hm делал перед этим и после релогина
hsh -v ~/hasher /home/kostya_hm/Documents/Q7z-0.75-alt5.alpha.src.rpm
hsh: changed working directory to `/home/kostya_hm/hasher'                                               
hsh: Locked working directory `/home/kostya_hm/hasher'                                                   
mkaptbox: changed working directory to `/home/kostya_hm/hasher'                                           
mkdir: создан каталог `aptbox'                                                                           
mkaptbox: Changed working directory to `/home/kostya_hm/hasher/aptbox'.                                   
mkdir: создан каталог `./etc'                                                                             
mkdir: создан каталог `./etc/apt'                                                                         
mkdir: создан каталог `./etc/apt/apt.conf.d'                                                             
mkdir: создан каталог `./etc/apt/sources.list.d'                                                         
mkdir: создан каталог `./etc/apt/vendors.list.d'                                                         
mkdir: создан каталог `./home'                                                                           
mkdir: создан каталог `./home/user'                                                                       
mkdir: создан каталог `./var'                                                                             
mkdir: создан каталог `./var/cache'                                                                       
mkdir: создан каталог `./var/cache/apt'                                                                   
mkdir: создан каталог `./var/cache/apt/archives'                                                         
mkdir: создан каталог `./var/cache/apt/archives/partial'                                                 
mkdir: создан каталог `./var/lib'                                                                         
mkdir: создан каталог `./var/lib/apt'                                                                     
mkdir: создан каталог `./var/lib/apt/lists'                                                               
mkdir: создан каталог `./var/lib/apt/lists/partial'                                                       
mkdir: создан каталог `./var/lib/rpm'                                                                     
права доступа `setarch' изменены на 0755 (rwxr-xr-x)                                                     
mkaptbox: created apt-cache wrapper                                                                       
права доступа `apt-cache' изменены на 0755 (rwxr-xr-x)                                                   
mkaptbox: created apt-config wrapper                                                                     
права доступа `apt-config' изменены на 0755 (rwxr-xr-x)                                                   
mkaptbox: created apt-get wrapper                                                                         
права доступа `apt-get' изменены на 0755 (rwxr-xr-x)                                                     
mkaptbox: created genbasedir wrapper                                                                     
права доступа `genbasedir' изменены на 0755 (rwxr-xr-x)                                                   
mkaptbox: created regenbasedir                                                                           
права доступа `regenbasedir' изменены на 0755 (rwxr-xr-x)                                                 
`/var/lib/apt/cdroms.list' -> `/home/kostya_hm/hasher/aptbox/var/lib/apt/cdroms.list'                     
`/var/lib/apt/lists//ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_noarch_base_release.classic' -> `/home/kostya_hm/hasher/aptbox/var/lib/apt/lists/ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_noarch_base_release.classic'       
`/var/lib/apt/lists//ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_noarch_base_release' -> `/home/kostya_hm/hasher/aptbox/var/lib/apt/lists/ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_noarch_base_release'                       
`/var/lib/apt/lists//ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_i586_base_pkglist.classic' -> `/home/kostya_hm/hasher/aptbox/var/lib/apt/lists/ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_i586_base_pkglist.classic'           
`/var/lib/apt/lists//ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_noarch_base_pkglist.classic' -> `/home/kostya_hm/hasher/aptbox/var/lib/apt/lists/ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_noarch_base_pkglist.classic'       
`/var/lib/apt/lists//ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_i586_base_release' -> `/home/kostya_hm/hasher/aptbox/var/lib/apt/lists/ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_i586_base_release'                           
`/var/lib/apt/lists//ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_i586_base_release.classic' -> `/home/kostya_hm/hasher/aptbox/var/lib/apt/lists/ftp.altlinux.org_pub_distributions_ALTLinux_5.0_branch_i586_base_release.classic'           
mkaptbox: Created APT configuration file `/home/kostya_hm/hasher/aptbox/etc/apt/apt.conf'.                                 
mkaptbox: Created APT source list file `./etc/apt/sources.list'.                                                           
mkaptbox: Created RPM database in `./var/lib/rpm/'.                                                                         
mkaptbox: updated hasher repository indices.                                                                               
Получено: 1 http://ftp.altlinux.org i586 release [729B]                                                                     
Получено: 2 ftp://ftp.altlinux.org noarch release [727B]                                                                   
Получено 1456B за 0s (4089B/s).                                                                                             
Получено: 1 http://ftp.altlinux.org i586/classic pkglist [2648kB]                                                           
Получено: 2 ftp://ftp.altlinux.org noarch/classic pkglist [1412kB]                                                         
Найдено http://ftp.altlinux.org i586/classic release
Найдено ftp://ftp.altlinux.org noarch/classic release
Получено 4060kB за 1m26s (46,9kB/s).
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
hasher-priv: /: bad perms: 775
hsh: hasher-priv getconf failed.


Drool

  • Гость
hasher-useradd kostya_hm

И этот пользователь kostya_hm в системе существует? Сборка производится из-под него?

ALtNovice

  • Гость
существует, сборка производится из под него
Проверил на всякий случай:
hasher-useradd kostya_hm
hasher-useradd: error creating satellite users: kostya_hm_a already exists
« Последнее редактирование: 25.03.2009 14:21:21 от ALtNovice »


ALtNovice

  • Гость
drwxrwxr-x 20 root root 4096 Мар 23 01:09 /

Drool

  • Гость
drwxrwxr-x 20 root root 4096 Мар 23 01:09 /

Это что было?