Автор Тема: Проблем при билд на rpm от сорс  (Прочетена 720 пъти)

Nik123

  • Напреднали
  • *****
  • Публикации: 4013
  • Distribution: Mageia, Q4OS
    • Профил
Здравейте! Опитвам се да си направя рпм от сорса на amsn -amsn-0.96.tar.bz2. Написах си спец файла и го стартирах, с rpm -bi за да мога да видя при make install кои файлове къде отиват и да ги прибавя в секцията %files на .spec файла, само че изплю следното:


checking tcl build dir... using tcl library in /usr/lib
./configure: line 2904: /usr/lib/tclConfig.sh: No such file or directory
error: Bad exit status from /home/nik/rpm/tmp/rpm-tmp.71080 (%build)


RPM build errors:
    Bad exit status from /home/nik/rpm/tmp/rpm-tmp.71080 (%build)

А същия месинджър от същия сорс се прекомпилира и инсталира нормално с ./configure, make, su, make install.

ето .spec файла- само секцията %files не съм довършил:
%define name   amsn
%define version   0.96
%define release   %mkrel 1

Name:      %{name}
Version:   %{version}
Release:   %{release}

Summary:   Free open source MSN messenger clone
Source:      http://mesh.dl.sourceforge.net/%{name}-%{version}.tar.bz2
URL:      http://amsn-project.net/index.php
Group:      Applications/Internet/Instant Messaging
BuildRoot:   %{_tmppath}/%{name}-%{version}-%{release}-buildroot
License:   GPL

%description
Linux clone of the Microsoft MSN messenger

%prep
%setup -q
%build
%configure
%make
%install
rm -rf $RPM_BUILD_ROOT
%makeinstall
%clean
rm -rf $RPM_BUILD_ROOT
%files



%defattr(0755,root,root)
%doc README NEWS COPYING AUTHORS
%{_mandir}/man1/*

Имам инсталирани tcl и tcl-tcllib. Някакви идеи? Благодаря предварително
Активен

Nik123

  • Напреднали
  • *****
  • Публикации: 4013
  • Distribution: Mageia, Q4OS
    • Профил
Проблем при билд на rpm от сорс
« Отговор #1 -: Mar 12, 2007, 09:44 »
Проблема в горния пост го оправих, но се появи нещо по-сложно- малко след стартирането на spec файла, и след като се компилира успешно, на make install стъпката, вади следната грешка:

+ '[' 1 -eq 1 ']'
+ rm -rf /home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot
+ make prefix=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr exec_prefix=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr bindir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr/bin sbindir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr/sbin sysconfdir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/etc datadir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr/share includedir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr/include libdir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr/lib libexecdir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr/lib localstatedir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/var/lib sharedstatedir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr/com mandir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr/share/man infodir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr/share/info install
rm -Rf /usr/share/amsn
mkdir --parents /usr/share/amsn
mkdir: cannot create directory `/usr/share/amsn': Permission denied
make: *** [install] Error 1
error: Bad exit status from /home/nik/rpm/tmp/rpm-tmp.83384 (%install)


RPM build errors:
    Bad exit status from /home/nik/rpm/tmp/rpm-tmp.83384 (%install)
[nik@localhost SOURCES]$

Като се има предвид, че mkdir е стартирано от моя юзър, а директорията rpm със съответните й поддиректории BUILD, SOURCES   и т.н, са поддиректории на /home папката ми, би следвало mkdir да може да прави поддиректории в /home/nik/rpm/tmp??? Ето и съдържанието на файловете .rpmrc и .rpmmacros:
.rpmrc

buildarchtranslate: i386: i586
buildarchtranslate: i486: i586
buildarchtranslate: i586: i586
buildarchtranslate: i686: i586

.rpmmacros

%_topdir /home/nik/rpm
%_tmppath /home/nik/rpm/tmp

%_signature gpg
%_gpg_name Mandrivalinux
%_gpg_path ~/.gnupg

%distribution Mandriva Linux
%vendor Mandriva
%packager Nik123

Някакви идеи, как да оправя това с правата за писане?
Активен

Gaara

  • Напреднали
  • *****
  • Публикации: 631
  • Distribution: Debian
  • Window Manager: E17
    • Профил
Проблем при билд на rpm от сорс
« Отговор #2 -: Mar 12, 2007, 12:44 »
Примерен код

mkdir: cannot create directory `/usr/share/amsn': Permission denied

изпълни като root make install
Активен

Last night, Darth Vader came down from planet Vulcan and told me that if you don't install Debian, he'd melt your brain.

Nik123

  • Напреднали
  • *****
  • Публикации: 4013
  • Distribution: Mageia, Q4OS
    • Профил
Проблем при билд на rpm от сорс
« Отговор #3 -: Mar 12, 2007, 13:20 »
Да, по принцип при инсталация от сорс е така, но тук става въпрос за билдване на рпм, инсталацията протича във "фалшиви" системни директории, поддиректории на /home/nik/rpm/tmp, не в истинските- досега съм направил няколко пакета и този проблем го нямаше, а и в How-to за правене на рпм в Мандрива не се препоръчва билдване като руут - а и поддиректорията, която иска да създаде mkdir е всъщност поддиректория на /home/nik/rpm/tmp, която е моята собствена home директория-
datadir=/home/nik/rpm/tmp/amsn-0.96-1mdv2007.0-buildroot/usr/share -
това е префикса, а mkdir би следвало да има право да пише в която и да е поддиректория на юзъра, който го стартира?
Активен