Building RPM’s – making a build environment

I’m going to do a few articles on building RPM’s as much for my own reference as anyone elses. I’m not an expert on the subject by any means… I do this from time to time, rebuild an rpm for an older system (or even a newer system that doesn’t have an official rpm for.) I have a tendency to forget things that I don’t do frequently. The first part of being able to rebuild rpm’s is to have what’s called a build environment. For starters, I’m using Mandriva 2006 (older versions I used Mandrake 10.1 or 10.0, etc.) In your home directory you need a folder called rpm.

In that folder you need subdirectories called:

the RPMS folder needs to have subfolders as well:


At this point you just need to have 2 configuration files in your home directory:

.rpmrc which should have the following:
buildarchtranslate: i386: i586
buildarchtranslate: i486: i586
buildarchtranslate: i586: i586
buildarchtranslate: i686: i586

and .rpmmacros which should contain this:
%_tmppath YOUR_HOME_DIR/rpm/tmp

%_signature gpg
%_gpg_name Mandrakelinux
%_gpg_path ~/.gnupg

%distribution Mandriva Linux
%vendor Mandriva

Make sure to adjust the path correctly. A Mandriva user even has a quite script to do all the above for you… it’s here Once this is done you’ve got all the folders you need.

The only other bit of advice I can give on the environment for rpm building. IF the packages are intended for others, try to keep the system as close to an “official” mandriva system as possible, try not to have requirements that would have users hunting for obscure non-mandriva packages. Ideally packages for public consumption with Mandriva should just have Main/contrib/updates requirements (maybe plf depending on what it is I suppose….) For your own use though, it’s up to you how “clean” your build system is.

Related Posts

Blog Traffic Exchange Related Posts
  • Building Deb packages from source.... Openvpn has been one of the tools of choice this week, so as I was tinkering on my ubuntu boxen.... I thought why don't I install openvpn there as well for a little broader testing. So, I did, but was a bit disappointed to see that the version was not......
  • Remote Tech Support using VNC (Ultravnc SC and x11vnc+wrapper script) Ok, some time back I'd done a writeup on UltraVNC SC, which is a nice customizable (windows version) VNC server that essentially let's someone doing remote support build their own downloadable .exe that runs and automatically tries to make a direct connection to a "listening" vnc viewer. It's good for......
  • Mozilla Firefox 1.5 for Mandriva 2006 Mandriva 2006 released without Mozilla Firefox 1.5, it came with 1.0.6 (which included security fixes and other patches from 1.0.7).... anyway, source rpm's for Firefox 1.5 became available in cooker, so I've built rpm's for Mandriva 2006 for easy management on my systems. I'll post links here as they may......
Blog Traffic Exchange Related Websites
  • 3 Tips For How To Get Site Visitors And Hyperlink-Building To Your Web Site Doing business on the Internet isn't much different from doing business wherever else. If you are active and creative you will get success. If you happen to have these two qualities it will be wise to use them to construct site visitors to your website. How to get traffic to......
  • Building Duck Blinds Hunting in duck blinds is vastly different than duck hunting in a boat. You'll also have to take a boat to your blind, but the first step is finding a blind where you can hunt. Some people have a blind set up ahead and allow people to use it or......
  • An Introduction To Wind Power We all know how important it is to preserve our environment and conserve natural resources. This has led to an unprecedented level of interest in using wind power and other types of alternative energy. However, a lot of people really aren't sure how wind power actually works. In fact,......    Send article as PDF   

Similar Posts

See what happened this day in history from either BBC Wikipedia
Amazon Logo

Comments are closed.

Switch to our mobile site