Ubuntu – Run 32-bit program on 64-bit Ubuntu without sudo

14.0432-bit64-bitmultiarch

There is a 32-bit program that I need to run on a 64-bit Ubuntu. When i try to run it, I have the following error :

program: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

When using my personal PCs, I have managed to solve this issue by using the following commands:

sudo dpkg --add-architecture i386 
sudo apt-get update 
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386

However, I now need to run this program on another PC on which I can't have the sudo rights. I did a google search to solve this issue but haven't found anything conclusive.

So my question is: is there any way for me to run a 32-bit program on a 64-bit Ubuntu (14.04 LTS) without any sudo command ?

Edit : the program I am trying to use is ProFit V3.1

Edit for @EliahKagan : results of requested commands:
On the target machine:

$ lsb_release -a
lsb_release : command not found

$ apt-cache policy libc6
apt-cache : command not found

$ file /lib/x86_64-linux-gnu/libc-*
/lib/x86_64-linux-gnu/libc-*: cannot open `/lib/x86_64-linux-gnu/libc-*' (No such file or directory)

Given these results, I'm not sure I should also give the results on my machine… ?
On my machine:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.5
LTS Release: 14.04
Codename: trusty
$ apt-cache policy libc6
libc6:
  Installed: 2.19-0ubuntu6.9
  Candidate: 2.19-0ubuntu6.9 [...]
$ file /lib/x86_64-linux-gnu/libc-*
/lib/x86_64-linux-gnu/libc-2.19.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs) [...]

Best Answer

The problem is not really about running 32bits binary on a 64bits platform those are retro compatible.

The problem is about installing new shared library system-wide which you do not have enough privileges for.

You might wanna search for a version of your binary which does not need shared libraries but is bundled with every libraries it needs.

EDIT :

If debootstrap and schroot are installed on that system you might want to chroot into a subfolder of your home and be root in that new system.

That would allow to have root privileges in that "virtual environment"

Explanations on how to achieve that can be found here : http://www.binarytides.com/setup-chroot-ubuntu-debootstrap/

Related Question