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?

Braiam
  • 66,947
  • 30
  • 177
  • 264
Apad121
  • 443
  • 2
  • 7
  • 19
  • 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 '13 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 '13 at 16:15
  • What program, and why? – psusi May 18 '13 at 16:15
  • i wanted to have it so i could run wps. – Apad121 May 18 '13 at 16:17
  • @apad121 got it .......Suggestion : you should update these details in your question – Qasim May 18 '13 at 19:05

2 Answers2

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
Fernando Paladini
  • 149
  • 1
  • 2
  • 13
Paul
  • 6,808
  • 3
  • 23
  • 29
  • 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 '13 at 19:22
  • @c_korn which are? – Robin Winslow Dec 26 '13 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](http://askubuntu.com/questions/454253/how-to-run-32-bit-app-in-ubuntu-64-bit) 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 '14 at 11:10
  • 1
    For Ubuntu versions >= 13.10, use `sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0` instead. – Fernando Paladini Feb 08 '15 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.

Seth
  • 57,282
  • 43
  • 144
  • 200
Larry Hunsicker
  • 499
  • 2
  • 6
  • 12
  • 1
    To get the 32-bit version you should install the packages with a trailing `:i386`. See this [answer](http://askubuntu.com/a/363879/198090) for more details. – OSE Dec 05 '13 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 '14 at 09: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 '17 at 17:36