How to Install Citrix Receiver on Linux Ubuntu

First, check if you are running 32- or 64-bit Ubuntu

uname -a

If it says x86_64 then you’re running 64 bits

Download and install Citrix Receiver on-bit Linux Ubuntu
Download and install OpenMotif v.2.3.1 (upd: openmotif 4)

1. Download the client: https://www.citrix.com/english/ss/downloads/details.asp?downloadid=3323

2. Unpack the tar.gz: tar xfvz linuxx86-11.0.140395.tar.gz (or right click and choose “unpack”)

3. Execute the install script:

sudo ./setupwfc

(or type SUDO and drop the file to Terminal)
4. Accept the default options (or whatever)
Before you do the next step make sure you are logged in  as a root user! Otherwise you won’t install the USB support
5. Install openmotif:

sudo apt-get install libmotif -dev

6. Run ldd to check for dependecy issues:

ldd /usr/lib/ICAClient/wfcmgr

linux-gate.so.1 => (0xb7fa9000)
libXm.so.4 => not found
libXp.so.6 => /usr/lib/libXp.so.6 (0xb7f92000)
libXpm.so.4 => /usr/lib/libXpm.so.4 (0xb7f81000)
libSM.so.6 => /usr/lib/libSM.so.6 (0xb7f79000)
libICE.so.6 => /usr/lib/libICE.so.6 (0xb7f61000)
libXmu.so.6 => /usr/lib/libXmu.so.6 (0xb7f4b000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7f47000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7f2f000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7ddf000)
libXt.so.6 => /usr/lib/libXt.so.6 (0xb7d8e000)
libX11.so.6 => /usr/lib/libX11.so.6 (0xb7ca7000)
libXext.so.6 => /usr/lib/libXext.so.6 (0xb7c99000)
libXau.so.6 => /usr/lib/libXau.so.6 (0xb7c96000)
/lib/ld-linux.so.2 (0xb7faa000)
libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0xb7c93000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb7c7b000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb7c76000)

As you can see, libXm.so.4 is missing and the executable wont run.

7. To solve this problem, create a sybolic link between for ldd /usr/lib/ICAClient/wfcmgr:

sudo ln -s /usr/lib/libXm.so.3 /usr/lib/libXm.so.4

8. Do an other ldd dependency check:

ldd /usr/lib/ICAClient/wfcmgr

linux-gate.so.1 => (0xb7f80000)
libXm.so.4 => /usr/lib/libXm.so.4 (0xb7d31000)
libXp.so.6 => /usr/lib/libXp.so.6 (0xb7d29000)
libXpm.so.4 => /usr/lib/libXpm.so.4 (0xb7d19000)
libSM.so.6 => /usr/lib/libSM.so.6 (0xb7d10000)
libICE.so.6 => /usr/lib/libICE.so.6 (0xb7cf8000)
libXmu.so.6 => /usr/lib/libXmu.so.6 (0xb7ce2000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7cde000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7cc6000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7b77000)
libXt.so.6 => /usr/lib/libXt.so.6 (0xb7b25000)
libX11.so.6 => /usr/lib/libX11.so.6 (0xb7a3e000)
libXext.so.6 => /usr/lib/libXext.so.6 (0xb7a30000)
libXau.so.6 => /usr/lib/libXau.so.6 (0xb7a2d000)
/lib/ld-linux.so.2 (0xb7f81000)
libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0xb7a2b000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb7a12000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb7a0d000)

The Citrix Receiver client should not able to run. It should be under Internet / Citrix receiver client.

Download and install Citrix Receiver on 64 bit Linux Ubuntu
Download and install OpenMotif v.2.3.1

The problem with ubuntu 64 resolved by following the instructions in this post at the citrix forums by Mark Syms:

On 64 bit Ubuntu you can do the following to get the 32 bit version of the Open Motif libraries installed.

mkdir motif
cd motif
wget https://ftp.ubuntu.com/ubuntu/pool/multiverse/o/openmotif/libmotif3_2.2.3-2_i386.deb
dpkg -x libmotif3_2.2.3-2_i386.deb .
sudo cp -r usr/lib/* /usr/lib32/

For Citrix receiver client V11 for Linux :

sudo ln -s /usr/lib32/libXm.so.3 /usr/lib32/libXm.so.4

So, in detail, we pull the 32 bit version of the libmotif package from the Ubuntu store. The version number may differ so run

apt-cache show libmotif3

Which will show you the details of the 64 bit version of libmotif (assuming you have the multiverse repository available). In the middle of this there is a filename something like

Filename: pool/multiverse/o/openmotif/libmotif3_2.2.3-2_amd64.deb

Which you can see is the same as the bit above with the i386 changed to amd64. We then extract the contents of the package into a temporary directory and then copy the libraries into the 32 bit library area in the machine.

Please not that if you choose to open the package with Ubuntu Software Center you will get the ability to install it from there as well!