1

I am trying to get a i686 compiled binary to run on my x86_64 CentOS7 install. When starting it complains it cannot find (dynammically load) the libpq library.

I tried installing the i686 Postgres repository to install the libraries, from there, but this failed:

[root@host bin]# yum localinstall http://yum.postgresql.org/9.3/redhat/rhel-6-i386/pgdg-centos93-9.3-1.noarch.rpm
Loaded plugins: fastestmirror
pgdg-centos93-9.3-1.noarch.rpm                                                                                                                           | 5.2 kB  00:00:00     
Examining /var/tmp/yum-root-36JlJy/pgdg-centos93-9.3-1.noarch.rpm: pgdg-centos93-9.3-1.noarch
/var/tmp/yum-root-36JlJy/pgdg-centos93-9.3-1.noarch.rpm: does not update installed package.
Nothing to do

How can I get this program to run?

4
  • It's 2015! How did you end up with a 32-bit binary? Jan 30, 2015 at 14:28
  • @MichaelHampton Legacy code that isn't ported (and probably never will). Jan 30, 2015 at 14:39
  • Hmm. EL7 is 64-bit only. There's no 32 bit version. If you intend to use this thing forever, your best bet is to recompile it and fix any issues that arise. Or use EL6, and plan to replace the legacy app completely within the next few years. Jan 30, 2015 at 14:46
  • @MichaelHampton both not possible (server has to be running again by monday). I migrated back to Postgres 9.2, which has all the necessary libraries in 32bit format, in the Base repo for CentOS7. The legacy application will certainly be replaced sometime this year and we will be using the latest version of our (64 bit) libraries then. Jan 30, 2015 at 16:15

1 Answer 1

2

I'm not sure what's in the pgdg package, but if you want i686 libraries for PostgreSQL, just install the postgresql-libs.i686 package. That should give you the libpq library in 32-bit version that your program is looking for.

6
  • That package is not available ... I was thinking the pgdg file would install the correct repo, where I could find that package. Jan 30, 2015 at 13:13
  • Then there's something else wrong - probably with the source of your updates or with how the system is registered to get those updates. The postgresql-libs.i686 package is part of the base channel for CentOS 7.
    – John
    Jan 30, 2015 at 13:15
  • Ah, wait, the Postgres installtion guide tells me to exclude those package for the pgdg repo. Because I want to use PgSQL 9.3 Jan 30, 2015 at 13:17
  • Then you'll need to find the 32 bit packages somewhere else - how that works with the upstream installer, I'm not at all sure.
    – John
    Jan 30, 2015 at 13:26
  • it looks like I am out of luck and the CentOS 7 i386 9.3 packages are not supplied by Postgres. Jan 30, 2015 at 13:28

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .