Building RPM’s – building from tarballs



Again – I’m NOT an expert on the subject, but have had some success with building rpm’s from either src.rpms (covered last time) and building from tarballs… This entry will talk about the simplest kind of rpm build from tarballs. This is a situation where the developer’s in their great foresight have actually got a spec file in the tarball (and it’s kept current).


I was looking at openvpn the other night. I haven’t really worked with the new 2.x series, I had previously worked with 1.5 On seeing 2.0.5 released I looked at downloading and saw a note on building an rpm from the tarball download. It is DEAD easy…

Instead of the rpm –rebuild that we used last time, for this job we need rpmbuild

$rpmbuild -tb /path/to/openvpn.tar.gz

Once again, read directions… For instance, rpmbuild told me I needed pam-devel to rebuild this package… so I became root and did urpmi pam-devel (which actually was libpam0-devel), after that things compiled just fine. (There is a list of other requires on their website.) If there are problems with the spec file, you can extract it and make changes and specify the new specfile instead of the included one. I didn’t run into this problem with openvpn, but have with other packages. Also, rpmbuild -tb tells it to compile from tarball and build a binary rpm, you could build a src.rpm with rpmbuild -ts or both src and binary rpms with rpmbuild -ta.

Personally I like having the src.rpm’s around for when I upgrade to a new release of the distribution or if I decide to try and build for an older release. It’s probably pack-rat-ism, but just a habit I’ve got in.

   Send article as PDF   

Similar Posts