David Hláèik wrote:
Hi guys,
i am new at this.
I want to make a rpm from a program source. It does not contain rpm
spec file by default so i need to create one.
Is there any way to make creation of spec files easier? some tools etc
... ?
Thanks in advance!
David
Both vim and emacs will create a basic spec for you by simply editing a
non existant spec file.
$ vim new.spec
will create a basic spec file if new.spec does not exist in the current
directory.
However, creating good spec files is a bit of a black art, I am afraid
to say.
You will need to install:
rpmdevtools
and run:
/usr/bin/rpmdev-setuptree
That creates your rpmbuild directory tree.
From there, you will find the field is broad, and the sky is the limit. :)
There are tools to watch 'make install' to discover what happens and
duplicate it for a %files section for a spec file, but using those tools
is a separate art form in itself.
I have found that most apps using 'configure' (automake) tools will have
fairly easy to read install: sections in the generated Makefile.
The rpm spec file: %files section allows for directories, making it easier.
So basically, make a generic .spec file, copy the source tarball to
~/rpmbuild/SOURCES, try: rpmbuild -ba my.spec, and watch for errors,
like the naming of the tar ball has to match the versioning specified in
the spec file. Also the directory that the tar ball is extracted into
should match the version.
That is the simplest form.
You will want some references:
http://www.rpm.org/max-rpm/index.html
http://docs.fedoraproject.org/drafts/rpm-guide-en/
Look for the section called: Creating the spec file
One last piece of advice:
Always run rpmbuild as your user, and NOT root. If your .spec file
needs root to do something, you are doing it wrong. :)
Good Luck!
--
fedora-list mailing list
fedora-list@xxxxxxxxxx
To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list
Guidelines: http://fedoraproject.org/wiki/Communicate/MailingListGuidelines