wiki:RpmHowToEndUsers

Version 4 (modified by Yuri Dario, 13 years ago) (diff)

How to install i686 optimized binaries.

RPM How-To for end users

Basic informations for end users about installing, upgrading and removing packages with RPM and YUM.

RPM Website: http://www.rpm.org/

YUM commands MAN page: http://linuxcommand.org/man_pages/yum8.html

Platform selection for binaries

The default base architecture setting for RPM/YUM is the i386 platform; if you own a i686 CPU, you can tell YUM to inspect i686 package list first, and fallback to i386 if none found. To enable i686, create a 'platform' text file in your %UNIXROOT%\etc\rpm directory with the following text in it:

i686-OS/2-OS/2

Note about upgrading from 2010 RPM builds

Newer RPM builds are now using Berkeley DB for storing package informations, while previous builds were using SqLite? 3 for this task. Since SqLite? support is being phased out, RPM moved to BDB. After updating you need to convert the old database to the new format: you can check this running

rpm -qa

at the command prompt; you will get a SIGSEV error or a message about wrong database format:

[E:\]rpm -qa
rpmdb: __db_meta_setup: /@unixroot/var/lib/rpm/Packages: unexpected file type or
 format
error: cannot open Packages index using db3 - Invalid argument (22)
error: cannot open Packages database in /@unixroot/var/lib/rpm
rpmdb: __db_meta_setup: /@unixroot/var/lib/rpm/Packages: unexpected file type or
 format
error: cannot open Packages database in /@unixroot/var/lib/rpm

To upgrade the database, use the following command sequence:

rpm --define '_dbapi 4' --rebuilddb
mv /@unixroot/var/lib/rpm /@unixroot/var/lib/rpm.bak
mv /@unixroot/var/lib/rpm.rebuild /@unixroot/var/lib/rpm

You can test operation running

rpm -qa

you will get the list of installed packages. The older SqLite? databases are now saved into mv /@unixroot/var/lib/rpm.bak, if everything is ok you can delete this directory.