Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Installed it with .deb from 2X website. Now got:

> /opt/2X/Client/bin/2XClient: error while loading shared libraries: libXpm.so.4: cannot open shared object file: No such file or directory

I tried to google for this problem but no luck (https://bugs.launchpad.net/ubuntu/+source/ruby-rvm/+bug/894311)

share|improve this question
    
try searching for the file with apt-file. –  Shiki Apr 17 '13 at 15:53
    
OK. # apt-file search libXpm.so.4 libxpm4: /usr/lib/x86_64-linux-gnu/libXpm.so.4 libxpm4: /usr/lib/x86_64-linux-gnu/libXpm.so.4.11.0 libxpm4-dbg: /usr/lib/debug/usr/lib/x86_64-linux-gnu/libXpm.so.4.11.0 –  user217816 Apr 17 '13 at 15:57
    
Where did you find a 64bit .deb for this? How did you manage to install it? According to their website: The 2X Client is also approved for the following 32-bit Linux distributions: Ubuntu 8.04, Ubuntu 8.10, Ubuntu 9.04, Ubuntu 9.10, OpenSuse 11.1, Fedora Core 9, Fedora Core 11, CentOs 5.2, VectorLinux 6.0. so there does not seem to be a 64bit client available. –  terdon Apr 17 '13 at 16:01
    
OK. My question then is: how to install 2XClient on 64-bit ubuntu? –  user217816 Apr 17 '13 at 16:05
1  
What do you mean by does not help? How far you got? Only this libXpm.so.4 missing? Did you install "libxpm4"? –  Shiki Apr 17 '13 at 17:03
show 3 more comments

2 Answers

This is my first post ever, so let me know when it´s useful to you.

This package seams to be i386 specific, with no amd64 version available. Apparently linux system can cope with packages meant for different architectures using e.g. multiarch (ubuntu 11+). This is how I installed a working version of 2xclient in the Terminal on my Linux Mint 15 64 bit.

  1. Download the appropriate package from www.2x.com

  2. tell the system to accept i386 packages

    sudo dpkg --add-architecture i386
    
  3. update the available packages from repositories

    sudo apt-get update
    
  4. install the downloaded package (go to the directory first)

    sudo dpkg -i 2XClient.deb
    
  5. You may need to fix broken dependencies using apt-get (didn´t do anything in my case)

    sudo apt-get -f install
    
  6. Check which files where installed from the package

    sudo dpkg -L '2xclient' 
    
  7. View the library dependencies of the binary, in my case as follows

    ldd /opt/2X/Client/bin/2XClient
    

    in my case the missing dependencies are 2 files: libxml2.so.2 and libXpm.so.4

  8. Find the packages that own these missing files

    sudo dpkg -S 'libXpm.so.4'
    sudo dpkg -S 'libxml2.so.2'
    

    which resulted in the information below:

    file package

    libxml2.so.2 libxml2 :amd64

    libXpm.so.4 libxpm4 :amd64

  9. Install the packages containing the missing files, with a explicit architecture reference (i386)

    sudo apt-get install libxpm4:i386
    sudo apt-get install libxml2:i386
    
  10. check your dependencies again

    ldd /opt/2X/Client/bin/2XClient

  11. Start up the 2xclient from your applications menu and you are good to go !! (I hope)

BTW jump from your 2x RDP session (remote desktop) to your own desktop with keyboard shortcut windows-alt-m

share|improve this answer
    
I managed to fix the dependencies using this, but now it just segfaults when I run it :( Any further clues? –  Steve Jan 14 at 21:54
add comment

According to the 2X website, there is no official package for 64 bit systems. You might be able to install from source following these steps (source):

  • Install ia32-libs

    sudo apt-get install ia32-libs
    

    I am not sure how this works on Ubuntu, but on Debian if you get this error:

    The following packages have unmet dependencies:
     ia32-libs : Depends: ia32-libs-i386 but it is not installable
    E: Unable to correct problems, you have held broken packages.
    

    You will need to run sudo dpkg --add-architecture i386 and then install ia32-libs again.

  • Download the 2X source code and extract it:

    mkdir 2XClient
    cd 2XClient
    wget http://2x.com/downloads/AppServer-LoadBalancer/2XClient.tar.bz2
    tar xvvjf 2XClient.tar.bz2
    
  • Run the install script (in the 2XClient directory):

    sudo ./opt/2X/Client/scripts/install.sh    
    
share|improve this answer
    
Nope, it does not work # sudo apt-get install ia32-libs Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies. ia32-libs : Depends: ia32-libs-multiarch E: Unable to correct problems, you have held broken packages. –  user217816 Apr 17 '13 at 16:33
    
sudo dpkg --add-architecture i386 dpkg: error: unknown option --add-architecture –  user217816 Apr 17 '13 at 16:36
    
@user217816, Ah yes Ubuntu have removed ia32-libs and replaced it with multiarch, sorry. Have a look at this thread. –  terdon Apr 17 '13 at 18:38
add comment

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.