HelloWorld.src.rpm auf Debian erstellt - Fehlermeldung auf Fedora

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
rimatheou
Beiträge: 89
Registriert: 18.02.2015 13:30:08

HelloWorld.src.rpm auf Debian erstellt - Fehlermeldung auf Fedora

Beitrag von rimatheou » 28.12.2018 10:12:58

Grüß Dich!

Ich habe ein einfaches HelloWorld.c geschrieben (auf einem 32bit-Debian-System 4.12.10):

Code: Alles auswählen

# include <stdio.h>

int main ()
{
printf("Hello World");

return 0;
}
Dies ist das Makefile:

Code: Alles auswählen

# Dieses Makefile ist fuer das Programm HelloWorld zustaendig.
# rpm auf Debian.

# Edited for Debian / GNU Linux

# Where to put binary on 'make install'?

BIN = /usr/bin/

make: HelloWorld.o HelloWorld

HelloWorld: HelloWorld.o
	gcc HelloWorld.o -o HelloWorld

HelloWorld.o: HelloWorld.c
	gcc -Wall -O -c HelloWorld.c

install:
	install -d $(ROOT)$(BIN)
	install ./HelloWorld $(ROOT)$(BIN)
Und dies ist das Specfile:

Code: Alles auswählen

Summary: The program "HelloWorld" (Version 1.0)
Name: HelloWorld
Version: 1.0
Release: 1
License: This software is copyright (c) 2002 - 2018 by ...
Group: Applications
Source: HelloWorld.c
Distribution: Debian Stretch
Vendor: none
Packager: Vorname Nachname vorname@nachname.de
Provides: Hello World

%description
HelloWorld is a simple programm...

%description -l de
HelloWorld ist ein einfaches Programm...

%build
/usr/bin/make ROOT="$RPM_BUILD_ROOT" HelloWorld

%install
/usr/bin/make ROOT="$RPM_BUILD_ROOT" install

%clean

%files
/usr/bin/HelloWorld
Mit

Code: Alles auswählen

rpmbuild -bs HelloWorld.spec
aus dem Ordner /root/rpmbuild/SPECS/ habe ich das Paket HelloWorld-1.0-1.src.rpm erstellt.

Wenn ich das Paket jetzt auf fedora 28 (4.16.3-301 auch 32bit) mit dem Befehl

Code: Alles auswählen

rpmbuild --rebuild /tmp/HelloWorld-1.0-1.src.rpm
installieren will, erhalte ich folgende Meldung:

Code: Alles auswählen

root@localhost mnt]# rpmbuild --rebuild /tmp/HelloWorld-1.0-1.src.rpm
Installing /tmp/HelloWorld-1.0-1.src.rpm
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.op3wMM
+ umask 022
+ cd /root/rpmbuild/BUILD
+ /usr/bin/make ROOT=/root/rpmbuild/BUILDROOT/HelloWorld-1.0-1.i386 HelloWorld
make: *** No rule to make target 'HelloWorld'. Stop.
error: Bad exit status from /var/tmp/rpm-tmp.op3wMM (%build)

RPM build errors:
	Bad exit status from /var/tmp/rpm-tmp.op3wMM (%build)
Passen die Kernel-Versionen nicht zusammen?
Geht das überhaupt, dass man ein rpm-Source-Paket, das auf einem Debian-System gebaut wurde, auf Fedora installiert?
Irgendeine Idee?
Ich würde gerne das Paket irgendwie hochladen, aber ich weiß nicht, wie das geht.
Gruß
rima

DeletedUserReAsG

Re: HelloWorld.src.rpm auf Debian erstellt - Fehlermeldung auf Fedora

Beitrag von DeletedUserReAsG » 28.12.2018 11:57:10

Möglicherweise suchst du das Fedora-Forum? Hier wird meist deb benutzt, die Wenigsten werden sich also mit rpm auskennen.

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: HelloWorld.src.rpm auf Debian erstellt - Fehlermeldung auf Fedora

Beitrag von eggy » 28.12.2018 15:10:18

Wo liegt Dein HelloWorld.c?

rimatheou
Beiträge: 89
Registriert: 18.02.2015 13:30:08

Re: HelloWorld.src.rpm auf Debian erstellt - Fehlermeldung auf Fedora

Beitrag von rimatheou » 28.12.2018 15:23:18

Die Dateien HelloWorld.c HelloWorld.spec und das Makefile liegen in /home/user/LB_6/rpm/ auf meinem Debian-System. Evtl. habe ich sie nach dem Erstellen des rpm-Pakets dorthin verschoben, das weiß ich nicht mehr.

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: HelloWorld.src.rpm auf Debian erstellt - Fehlermeldung auf Fedora

Beitrag von eggy » 28.12.2018 15:51:58

Wird möglicherweise daran liegen, dass die Dateien nicht in den richtigen Verzeichnissen liegen.
Erster Treffer von $suchmachine genommen, da sieht das auch etwas anderes aus.
https://blog.packagecloud.io/rpm/rpmbui ... -rpmbuild/
Vielleicht diesbezüglich nochmal die Doku konsultieren? Auf https://sysadmincrumbs.readthedocs.io/e ... /RPMBUILD/ wird auch noch "Note: Don't forget to place your source file in the SOURCES dir and set the build area in the ~/.rpmmacros file!" als Hinweis mitgegeben, würde daher mal in der Richtung suchen.

rimatheou
Beiträge: 89
Registriert: 18.02.2015 13:30:08

Re: HelloWorld.src.rpm auf Debian erstellt - Fehlermeldung auf Fedora

Beitrag von rimatheou » 28.12.2018 17:47:08

Das Erstellen des Pakets liegt schon eine Weile zurück. Komme jetzt erst zum Testen. Ich habe

- HelloWorld.spec in /root/rpmbuild/SPECS
- HelloWorld.c in /root/rpmbuild/SOURCES und
- Makefile in /root/rpmbuild/SOURCES

und Kopien im Homeverzeichnis. Bin mir aber sicher, dass ich das Paket von /root/rpmbuild aus gemacht habe. Sorry!

Antworten