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 19c Dataguard Installation with DG Broker

Creating Jobs With Different Users via pg_cron in Azure Postgresql Flexible Server