how to make rpm in linux

Programming, for all ages and all languages.
Post Reply
shaz

how to make rpm in linux

Post by shaz »

i've developed a small applcation in linux.

how can i make rpm of this application .
chris

Re:how to make rpm in linux

Post by chris »

I'm guessing "man rpm", but I don't use RedHat.
creichen

Re:how to make rpm in linux

Post by creichen »

Hi,

making rpms is a little painful. IIRC, you usually want to run

[tt]rpm -ba specfile.spec[/tt]

where `[tt]specfile.spec[/tt]' is a so-called spec file (have a look at the FreeSCI one if you'd like an example). RPM will then seek some .tar.bz2 file somewhere on your system and try to configure and build ('make') it-- the package name is specified in the spec file, but the precise location is usually not where you'd like it to be.
You can override that location by specifying

[tt] %_topdir /home/login/tmp/[/tt]

(or something similar) in your [tt] ~/.rpmmacros[/tt]. You will also need a couple of directories in there ([tt]RPMS[/tt], [tt]SRPMS[/tt], [tt]SOURCES[/tt], [tt]BUILD[/tt]) which it will complain about if they're missing. One of them ([tt]SOURCES[/tt]) will have to contain the tar.bz2 package you want to build. Make sure that your spec file specifies all the binaries, libraries, and extra data you want to ship-- [tt]freesci-0.3.4a_*.rpm[/tt] had a rather embarrassing bug in that the `[tt]freesci[/tt]' executable was missing, for example...

-- Christoph
Post Reply