13

Recently I upgraded my netbook to Ubuntu 13.04 64-bit from Ubuntu 13.04 beta 2 32-bit.

I want to be able to run 32-bit programs (such as WPS, which is a clone of MS Office 2012) on my PC.

How do I do it? Is there an easy way of doing it via the terminal?

5
  • 64 bit os can run 32 bit + 64 bit programs , where as 32 bit can run only 32 bit programs ...by the way how come you have upgraded from 32 bit to 64 bit ?
    – Qasim
    May 18, 2013 at 15:42
  • the reason i did it was because on the download page it says that if you run windows 8 or any uefi firmware you should use the 64bit version. i can not really see much diference to be honest.
    – Apad121
    May 18, 2013 at 16:15
  • What program, and why?
    – psusi
    May 18, 2013 at 16:15
  • i wanted to have it so i could run wps.
    – Apad121
    May 18, 2013 at 16:17
  • @apad121 got it .......Suggestion : you should update these details in your question
    – Qasim
    May 18, 2013 at 19:05

2 Answers 2

16

If you install the 32-bit compatibility libraries, you should be able to run 32 bit programs normally:

sudo apt-get install ia32-libs

Note: if you use Ubuntu 13.10 or higher, you'll need install these packages instead:

sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
4
  • 6
    Please note that this package does not exist in Ubuntu 13.10 any longer. You have to install all the required i386 libraries.
    – c_korn
    Oct 13, 2013 at 19:22
  • @c_korn which are? Dec 26, 2013 at 21:53
  • As @c_korn points out, this package can't be installed on newer Ubuntu releases. I've just tried this on 14.04 and didn't work, but this other question turned out to be useful. By running sudo dpkg --add-architecture i386 I've been able to install wine, which was previously causing apt to fail because "the package is not installable".
    – Genba
    Nov 21, 2014 at 11:10
  • 1
    For Ubuntu versions >= 13.10, use sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 instead. Feb 8, 2015 at 15:13
2

According to the error message that I got trying to install ia32-libs, the following should work to install the replacement libraries.

sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0

This seems to install correctly, but I am still getting an error when I try to run my 32 bit application:

error while loading shared libraries: libpangox-1.0.so.0: wrong ELF class: ELFCLASS64

So evidently there is another step needed.

3
  • 1
    To get the 32-bit version you should install the packages with a trailing :i386. See this answer for more details.
    – OSE
    Dec 5, 2013 at 20:34
  • I'm adding a proposed edit that should have been a comment, from an anonymous user: Added info: I have got 32-bit Linux programs to run fine in Ubuntu 14.10 64-bit after not only doing the above line, but also after installing the Wine (ie, the Wine for running 32-bit programs). Wine evidently sets up extra relevant packages which makes also Linux 32-bit programs run better. --A.Tacoma
    – Sparhawk
    Dec 21, 2014 at 9:09
  • Its not extra setup. It only proves that wine has massive dependency on a lot of system libraries, installing wine just helped you install the i386 version of all these common dependencies.
    – Ben
    Dec 21, 2017 at 17:36

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