Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I recently upgraded to an amd64 version of Wheezy, and I have a couple of compiled proprietary programs that need to keep running 32-bit.

No problem, I installed the i386 compatibility libraries

dpkg --add-architecture i386
apt-get update
apt-get install ia32-libs

Unfortunately, the version of one of the libraries installed is wrong, generating an error:

error while loading shared libraries: libdb-4.6.so: cannot open shared object file: No such file or directory

It looks like I've got:

-rw-r--r-- 1 root 1641048 Jun 28  2012 i386-linux-gnu/libdb-5.1.so

Where my program expects:

-rw-r--r-- 1 root 1638052 Sep 13  2008 libdb-4.6.a
-rw-r--r-- 1 root     800 Sep 13  2008 libdb-4.6.la
-rw-r--r-- 1 root 1256548 Sep 13  2008 libdb-4.6.so

What's the best way to backtrack the libraries to resolve this error?

share|improve this question
    
Have you tried just symlinking a 4.6 to the 5.1 libs? –  jscott Apr 24 at 1:07
    
Interesting thought, but no go. After that link: /usr/lib/i386-linux-gnu/libdb-4.6.so: version `DB4_6' not found –  Shannon A. Apr 24 at 4:34

1 Answer 1

up vote 1 down vote accepted

I just copied my libdb-4.6.so file off of my old i386 machine into /usr/lib/i386-linux-gnu and it seems to work fine.

Anyone want to tell me why this is a horrible idea? If not, this may be the answer ...

share|improve this answer
1  
Considering the scope of use this library will have, I believe this is the correct answer. –  jscott Apr 26 at 2:07

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.