• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

baghira-0.4c für die 8.2 compilieren

Mad Elk

Member
Hai,

da ich für meine SuSE 8.2 Prof. kein rpm für baghira-0.4c gefunden habe wollte ich das Teil selber kompilieren. Nutze KDE 3.1.5

Ein

"./configure --prefix=`kde-config --prefix` --disable-debug", wie auf www.kde-look.org beschrieben, läuft fehlerfrei durch
"Good - your configure finished. Start make now"

Wenn ich dann "make" ausführe, erscheint folgender Fehler

g++: /usr/lib/libart_lgpl_2.so: No such file or directory
make[2]: *** [bab] Fehler 1
make[2]: Leaving directory `/usr/local/src/baghira-0.4c/bab'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/usr/local/src/baghira-0.4c'
make: *** [all] Fehler 2

Die Datei existiert aber...

lrwxrwxrwx 1 root root 23 2003-04-26 16:52 libart_lgpl_2.so -> libart_lgpl_2.so.2.3.11

Wo liegt das Problem?

Gruß Mad Elk
 

oc2pus

Ultimate Guru
hol dir das srpm von hier:

http://guru.unixtech.be/rpm/packages/Themes/KDE3/baghira/

installiere das SRPM
cd /usr/src/packages/SPECS
editiere das SPEC und ändere die Versionsnummer

cd /usr/src/packages/SOURCES
kopiere hierhin das tar.gz 0.34er Version

rpm -bb /usr/src/packages/SPECS/baghira.spec

==> /usr/src/packages/RPMS/i{3456}6 steht ein 0.34er RPM

Fertig ;)
 
OP
M

Mad Elk

Member
Danke für die Info.

der Download des rpm´s funzt bei mir nicht. Wäre es viel verlangt, wenn du mir kurz das rpm bauen würdest :wink:

CU Mad Elk
 

oc2pus

Ultimate Guru
könnte ich tun, wenn ich ein 8.2 hätte ;)

bei mir geht der Download. Hier nochmal der komplette Link:
http://guru.unixtech.be/rpm/packages/Themes/KDE3/baghira/src/baghira-0.3o-2suse90.src.rpm
 

oc2pus

Ultimate Guru
wahrscheinlich hat dein Browser die Endung rpm auf irgendeine ANwendung (RealPlayer) gemappt. Probier mal SPEICHERN UNTER

oder in einer Konsole:
wget -c <linkadresse>
 
A

Anonymous

Gast
Um nochmal auf's selbstkompilieren zurückzukommen:

Vielleicht brauchst du libart_lgpg-devel ?!
 
OP
M

Mad Elk

Member
libart_lgpg-devel ist installiert. Ich scheitere auch mit dem spec-File.

rpm -bb /usr/src/packages/SPECS/baghira0.4c.spec
/usr/src/packages/SPECS/baghira0.4c.spec ist keine reguläre Datei
Anubis:/home/madelk # rpm -bb /usr/src/packages/SPECS/baghira-0.4c.spec
Ausführung(%prep): /bin/sh -e /var/tmp/rpm-tmp.14710
+ umask 022
+ cd /usr/src/packages/BUILD
+ cd /usr/src/packages/BUILD
+ rm -rf baghira
+ /usr/bin/bzip2 -dc /usr/src/packages/SOURCES/baghira-0.4c.tar.bz2
+ tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd baghira
/var/tmp/rpm-tmp.14710: line 28: cd: baghira: Datei oder Verzeichnis nicht gefunden
Fehlerhafter Status nach Ausführen von /var/tmp/rpm-tmp.14710 (%prep)

In welcher Datei muss ich denn den Namen des Verzeichnisses ändern? Ich schätze mal, das Verzeichnis muss baghira-0.4c heissen.
 

oc2pus

Ultimate Guru
Code:
%define _name           baghira
%define _version        0.3o
%define _rel            2

wenn dein tar.gz baghira-0.4c.tar.gz heisst dann musst du ändern in:

Code:
%define _name           baghira
%define _version        0.4c
%define _rel            1

und diese Zeile
Code:
Source:                 %{_name}-%{_version}.tar.bz2

musst du anpassen an die Endung der neuen Datei (tar.gz)
 
OP
M

Mad Elk

Member
die Änderung im spec-file habe ich gemacht.

%define _name baghira
%define _version 0.4c
%define _rel 1

aber was soll sich in der Zeile

Source: %{_name}-%{_version}.tar.bz2

ändern? Der Name lautert ja weiterhin baghira-0.4c.tar.bz2 oder nicht?

Die Fehlermeldung ist die gleiche

+ cd baghira
/var/tmp/rpm-tmp.61872: line 28: cd: baghira: Datei oder Verzeichnis nicht gefunden
 

oc2pus

Ultimate Guru
ok, du hast ein baghira-0.4c.tar.bz2. Dann brauchst du da nix ändern ;)

es kann aber sein das dieses tar.bz2, wenn es entpackt wird, sich in ein Verzeichnis baghira entpackt und nicht baghira-0.4c (dieses erwartet rpmbb)

Lösung 1:
baghira-0.4c.tar.bz2 entpacken, das entstehende baghira Verzeichnis umbenennen in baghira-0.4c, dann neues tar.bz2 erstellen

Lösung 2:
rpm -bb aufrufen ==> es wird in /usr/src/packages/BUILD/baghira entpackt und du passt im SPEC file den Pfad an
Code:
%setup -q -n "%{_name}"
ändern in
Code:
%setup -q -n "%{_name}-0.4c bzw. %setup -q -n "%{_name}-%{_version}
also den Namen den das enpackte Archiv in BUILD erzeugt
 
OP
M

Mad Elk

Member
es kann aber sein das dieses tar.bz2, wenn es entpackt wird, sich in ein Verzeichnis baghira entpackt und nicht baghira-0.4c (dieses erwartet rpmbb)

nein, leider nicht. Das Verzeichnis lautet nach dem Entpacken "baghira-0.4c"
 

oc2pus

Ultimate Guru
dann im spec ändern:

%setup -q -n "%{_name}-0.4c
bzw.
%setup -q -n "%{_name}-%{_version}

dann solte er ein cd nach baghira-0.4c triggern
 
OP
M

Mad Elk

Member
die 2. Lösung bringt mich einen Schritt weiter...

rpm -bb /usr/src/packages/SPECS/baghira.spec
Ausführung(%prep): /bin/sh -e /var/tmp/rpm-tmp.69006
+ umask 022
+ cd /usr/src/packages/BUILD
+ cd /usr/src/packages/BUILD
+ rm -rf baghira-0.4c
+ /usr/bin/bzip2 -dc /usr/src/packages/SOURCES/baghira-0.4c.tar.bz2
+ tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd baghira-0.4c
++ /usr/bin/id -u
+ '[' 0 = 0 ']'
+ /bin/chown -Rhf root .
++ /usr/bin/id -u
+ '[' 0 = 0 ']'
+ /bin/chgrp -Rhf root .
+ /bin/chmod -Rf a+rX,g-w,o-w .
+ echo 'Patch #0 (baghira.diff):'
Patch #0 (baghira.diff):
+ patch -p0 -s
The text leading up to this was:
--------------------------
|--- widget-engine/baghira.cpp.orig 2004-03-05 12:28:08.000000000 +0100
|+++ widget-engine/baghira.cpp 2004-03-05 12:28:11.000000000 +0100
--------------------------
File to patch:

Was muss ich auswählen bzw. eingeben?
 

oc2pus

Ultimate Guru
der patch ging davon aus, das wir uns in baghira Verzeichnis befinden, durch die Änderungen sind wir aber jetzt in baghira-0.4c

gib als Dateinamen den kompletten Pfad an für diese Datei oder kommentiere in dem SPEC die Zeile
%patch aus (mit #)
 
OP
M

Mad Elk

Member
es lief und lief.....aber dann war ich wieder beim Ursprungsproblem...

g++: /usr/lib/libart_lgpl_2.so: No such file or directory
make[2]: *** [bab] Fehler 1
make[2]: Leaving directory `/usr/src/packages/BUILD/baghira-0.4c/bab'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/usr/src/packages/BUILD/baghira-0.4c'
make: *** [all] Fehler 2
Fehlerhafter Status nach Ausführen von /var/tmp/rpm-tmp.33322 (%build)

Muss ich evtl. einen Link mit ln -s oder sonst was erstellen? Die Datei gibt es, wie oben beschrieben.
 
OP
M

Mad Elk

Member
-rw-r--r-- 1 root root 121020 2003-03-14 02:12 /usr/lib/libart_lgpl_2.a
-rwxr-xr-x 1 root root 748 2003-03-14 02:12 /usr/lib/libart_lgpl_2.la
lrwxrwxrwx 1 root root 23 2003-04-26 16:52 /usr/lib/libart_lgpl_2.so -> libart_lgpl_2.so.2.3.11
lrwxrwxrwx 1 root root 23 2003-11-09 13:28 /usr/lib/libart_lgpl_2.so.2 -> libart_lgpl_2.so.2.3.16
-rwxr-xr-x 1 root root 99233 2003-10-17 03:22 /usr/lib/libart_lgpl_2.so.2.3.16
 

oc2pus

Ultimate Guru
lrwxrwxrwx 1 root root 23 2003-04-26 16:52 /usr/lib/libart_lgpl_2.so -> libart_lgpl_2.so.2.3.11

der ist falsch ;)

rm /usr/lib/libart_lgpl_2.so
ln -s /usr/lib/libart_lgpl_2.so.2.3.16 /usr/lib/libart_lgpl_2.so

und nochmal
 
OP
M

Mad Elk

Member
jetzt ging´s fast ganz durch.

usr/lib/qt3/include/qasciidict.h:90: error: explicit specialization in
non-namespace scope `BaghiraButton::QConnection::~QConnection()'
/usr/lib/qt3/include/qconnection.h:49: confused by earlier errors, bailing out
make[3]: *** [baghiraclient.lo] Fehler 1
make[3]: Leaving directory `/usr/src/packages/BUILD/baghira-0.4c/deco'
make[2]: *** [all-recursive] Fehler 1
make[2]: Leaving directory `/usr/src/packages/BUILD/baghira-0.4c/deco'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/usr/src/packages/BUILD/baghira-0.4c'
make: *** [all] Fehler 2
Fehlerhafter Status nach Ausführen von /var/tmp/rpm-tmp.49077 (%build)

Das kann ich nachvollziehen glaub ich...ich habe noch die qt 3.3.0.38 und KDE 3.1.5...

"You need KDE 3.2.x with QT 3.3.1 as minimum."

Mal danke für die bisherige Hilfe. Falls es nach dem Ugrade auf die aktuelle QT immer noch nicht funzen sollte, poste ich nochmals.

CU
 

oc2pus

Ultimate Guru
oki, aber das Prinzip mit den SRPM hast du jetzt verstanden ?

Anmerkung: Meistens (fast immer eigentlich) ist nicht soviel am SPEC rumzufummeln ;) Nur die Versionsnummer und fertisch...
 
Oben