Hey guys, this is my first post so I don’t know if this is the right sub-forum, but here goes my question.
I recently installed openSUSE 13.2 64-bit to try it out, but my job requires me to compile 32-bit applications most of the time. Currently I’m building something that has a dependency on libpq.so, and it’s failing to link because there is no libpq.so symbolic link in /usr/lib. I searched for PostgreSQL in YaST2 and made sure the following obvious choices of packages were installed:
libpq5
libpq5-32bit
postgresql
postgresql-devel
postgresql93
postgresql93-devel
Since there is a libpq.so symbolic link in /usr/lib64, I assume postgresql93-devel installed it, but this didn’t create a libpq.so symbolic link in /usr/lib, even after installing it after libpq5-32bit.
I can probably ‘fix’ this by making the sym link myself, but shouldn’t there be a postgresql-devel-32bit package (or equivalent)?
Just create a symlink in /usr/lib/libpq.so to point to /usr/lib/libpq.so.5.6
Another option would be to install the i586 postgresql-devel package (click on “Versions” in YaST).
But then you wouldn’t be able to build 64bit applications against postgresql any more of course.
Wouldn’t that replace the existing x86_64 one? Isn’t there a supported way of having two coexisting development versions of the library? This seemed to work seamlessly with other dependencies I had, such as ncurses and glib. They both had -devel-32bit equivalents of the 64-bit versions.
Yes, as I wrote.
But if you only want to build 32bit applications, this should be ok I suppose.
Or just create the symlink manually, as Miuku suggested.
It is just a symlink anyway, the 32bit library does exist as separate -32bit package, and the headers are the same for 32bit and 64bit (even in the same location).
Isn’t there a supported way of having two coexisting development versions of the library? This seemed to work seamlessly with other dependencies I had, such as ncurses and glib. They both had -devel-32bit equivalents of the 64-bit versions.
Of course it would be possible.
But in this particular case, there is no -devel-32bit package available, as you wrote yourself.
If you think there should be, please file a bug report. http://bugzilla.opensuse.org/ (same username/password as here)
I know it’s just a symlink, and that’s what I’ve done to move on, but I think it would be better to have that in a package. However, I’ve found a couple of other similar examples where I had to create the symlink myself which makes me wonder if all of this is intentional or by design. Do you know of a mailing list where I can ask such package-related questions before filing a bug?