crystal
crystal

Reputation: 363

rpm installation fails due to depencency /bin/sh not found

i am trying to install a package using rpm, for which i have created a different database using rpmdb --initdb --dbpath $HOME/myrpmdb and specifying that path in the --dbpath while insatlling. The error i am getting is

root@jason:su rpm --dbpath $HOME/myrpmdb -ivh XXX.rpm
error: Failed dependencies:
/bin/sh is needed by XXX

and /bin/sh exist Is there some way that i can specify this to the installer? Is there something i missed during the creation of different rpm database cause of which now it not able to fine the default commands?

Upvotes: 15

Views: 66955

Answers (4)

burtsevyg
burtsevyg

Reputation: 4076

Right way install rpm via alien:

alien -i my_rpm_name.rpm

If alien is not installed:

sudo apt-get install alien

Upvotes: 21

Minto Joseph
Minto Joseph

Reputation: 146

error: Failed dependencies:
/bin/sh is needed by XXX

This happens because bash rpm is not available in the new rpmdb path. You would have to use following to get the rpm installed.

# rpm --dbpath $HOME/myrpmdb --nodeps -ivh XXX.rpm

Upvotes: 6

thekbb
thekbb

Reputation: 7924

Why use a different rpm database? There should be a really good reason to go this route...

If you must have a private rpm db, you can copy the system db into your private one cp /var/lib/rpm/* ~/myrpmdb/.

installing with --nodeps may be the easiest way... copying the rpm db is really sub-optimal, it will soon be out of date and not reflect the state of the system.

Upvotes: 0

Ignacio Vazquez-Abrams
Ignacio Vazquez-Abrams

Reputation: 798626

Because you've told it to use a completely different database, rpm doesn't look at the system database which is where /bin/sh would be found.

Upvotes: 0

Related Questions