What is "RPM"?
RPM, the RedHat Package Manager, is a useful utility for managing the
installation of complex packages. It works on most platforms; you do not
need to run RedHat Linux to use rpm.
I have been alerted that this port does not work correctly if you are using "text" mounts. The temporary workaround is to use "binary" mounts. Eventually, I'll have time to complete this port to cygwin, by ensuring that the "fopen()" commands in the sourcecode use O_BINARY when it is appropriate.
How to install the binary kit:
- download, and save it somewhere <path-to-tarball>
- cd /
- bzip2 -dc <path-to-tarball>/rpm-3.0.2-cygwinb20.tar.bz2 | tar xvf -
- rpm --initdb
- touch /etc/mtab
Warning: before unpacking the tarball in step 3, make sure that the following
four files do not exist.
- /usr/local/lib/rpmpopt
- /usr/local/lib/rpmrc
- /usr/local/lib/rpm/rpmpopt
- /usr/local/lib/rpm/rpmrc
How to build from source:
First, you need to build and install the "gettext" and "Berkeley db" libraries
Then, do the following:
- download the source tarball and the patch. Save them somewhere handy. <path-to-tarball>
- cd /usr/local/src
- gzip -dc <path-to-tarball>/rpm-3.0.2.tar.gz | tar xvf -
- cd /usr/local/src/rpm-3.0.2
- patch -p1 < <path-to-tarball>/rpm-3.0.2-cygwinb20.patch
- cp misc/libgettext.h intl/libgettext.h
- LIB='-L/usr/local/lib' CPPFLAGS='-I/usr/local/include' ./configure --prefix=/usr/local
- make
- make tar
NOTE: "make install" doesn't seem to work
- mv /tmp/rpm-3.0.2.tar /usr/local/src/rpm-3.0.2-cygwinb20.tar
- cd /
- tar xvf /usr/local/src/rpm-3.0.2-cygwinb20.tar
see warning below
- rpm --initdb
- touch /etc/mtab
Warning: before unpacking the tarball, make sure that the following
four files do not exist.
- /usr/local/lib/rpmpopt
- /usr/local/lib/rpmrc
- /usr/local/lib/rpm/rpmpopt
- /usr/local/lib/rpm/rpmrc
Download version 3.0.2 for cygwin-b20.1
Original sourcecode:
Patch:
Readme:
Binary:
B20 Home
Obsolete CygUtils Home
Last modified: Sat Feb 05 18:41:35 Eastern Standard Time 2000