Error when Installing Some Postgresql Packages (Perl IPC-Run)

Resolving PostgreSQL 17 Dependency Error on Oracle Linux 8

Fixing perl(IPC::Run) Dependency Error When Installing PostgreSQL 17 on Oracle Linux 8

Background

While preparing a fresh Oracle Linux 8 server for a PostgreSQL 17 deployment, an attempt to install all PostgreSQL packages in one go failed with an unsatisfied dependency error:

Problem 1: cannot install the best candidate for the job
- nothing provides perl(IPC::Run) needed by postgresql17-devel-17.4-1PGDG.rhel8.x86_64
...

Root Cause

The perl(IPC::Run) module (along with several tool‑chain libraries) resides in the CodeReady Builder repository, which is disabled by default on Oracle Linux 8. Because postgresql17-devel and postgresql17-test depend on that module, dnf/yum cannot resolve the full dependency tree unless the repository is enabled.

CodeReady Builder hosts developer‑oriented packages—compilers, debuggers, Perl/Python modules—that many “‑devel” RPMs rely on.

Solution

  1. Enable the CodeReady Builder repository:

    sudo dnf config-manager --enable ol8_codeready_builder
  2. Rerun the installation command:

    sudo yum install postgresql17*

With the additional channel enabled, dnf successfully pulled in perl(IPC::Run) and the entire PostgreSQL 17 toolchain (devel, contrib, docs, plperl, plpython, etc.) installed without further issues.

Verification & Post‑Install Tasks

Confirm package presence:

rpm -qa | grep ^postgresql17

Initialize and start the database cluster:

sudo /usr/pgsql-17/bin/postgresql-17-setup initdb
sudo systemctl enable --now postgresql-17

Key Takeaways

  • Developer packages frequently depend on CodeReady Builder content.
  • Check repository status with dnf repolist all before large installs.
  • Use --enablerepo for one‑off operations if you prefer not to keep CodeReady Builder enabled permanently.

Comments

Popular posts from this blog

Oracle Database Upgrade With OPatch Tool (RHEL/Centos/OEL)

POSTGRESQL UPGRADE WITH PG_UPGRADE UTILITY IN RHEL/CENTOS/OEL