31

Is there a way to solve this?

$ /usr/local/pulse/pulseUi
/usr/local/pulse/pulseUi: error while loading shared libraries: libwebkitgtk-1.0.so.0: cannot open shared object file: No such file or directory
9
  • It sounds as though you updated from an earlier version of Ubuntu? What application are you trying to run. Apr 18, 2019 at 21:08
  • right I upgraded from 18.10 trying to run Pulse Secure a VPN client
    – bartvde
    Apr 18, 2019 at 21:09
  • From their website, they don't officially support anything over 18.04, however I did see a tech note there indicating that there was a way to run it on 18.10. You may need to contact them for support https://www-prev.pulsesecure.net/download/techpubs/current/1383/pulse-client/pulse-secure-client-desktop/9.0rx/ps-pulse-9.0r2-supportedplatforms.pdf Apr 18, 2019 at 21:14
  • 1
    Try this wget http://mirrors.edge.kernel.org/ubuntu/pool/universe/w/webkitgtk/libwebkitgtk-1.0-0_2.4.11-4_amd64.deb; sudo dpkg -i libwebkitgtk-1.0-0_2.4.11-4_amd64.deb; sudo apt install -f.
    – Kulfy
    Apr 18, 2019 at 21:14
  • Thanks I then get: dpkg: dependency problems prevent configuration of libwebkitgtk-1.0-0:amd64: libwebkitgtk-1.0-0:amd64 depends on libjavascriptcoregtk-1.0-0 (= 2.4.11-4); however: Package libjavascriptcoregtk-1.0-0 is not installed. libwebkitgtk-1.0-0:amd64 depends on libicu60 (>= 60.1-1~); however: Package libicu60 is not installed.
    – bartvde
    Apr 18, 2019 at 21:20

7 Answers 7

42

Ubuntu 19.04 is not a supported platform for Pulse Secure. You may get it to work by following the instructions below without installing dependencies with the package manager. Note: Use carefully && caution with your own risk.

  • As root user, run:

    dpkg -i pulse-9.0.R3.x86_64.deb
    cd /usr/local/pulse/
    
  • Allow installation for 19.04 (or 19.10 / 20.04 / 20.10 / 21.04) by sed ( or manually in line 279 in PulseClient_x86_64.sh). In below is it for 19.04/19.10.

    sed -i "s/UBUNTU_VER\ \=\ 18\ \]/& \|\|\ [\ \$UBUNTU_VER\ \=\ 19 \]/" PulseClient_x86_64.sh
    
  • May not needed. At least it will fail with packages which not found.

    ./PulseClient_x86_64.sh install_dependency_packages
    
  • Lets make debs and extra folders:

    mkdir /usr/local/pulse/extra
    mkdir /usr/local/pulse/debs   
    
  • Download below packages from archice.ubuntu.com to /usr/local/pulse/debs:

    cd /usr/local/pulse/debs
    wget http://archive.ubuntu.com/ubuntu/pool/main/i/icu/libicu60_60.2-3ubuntu3_amd64.deb
    wget http://archive.ubuntu.com/ubuntu/pool/universe/w/webkitgtk/libjavascriptcoregtk-1.0-0_2.4.11-3ubuntu3_amd64.deb
    wget http://archive.ubuntu.com/ubuntu/pool/universe/w/webkitgtk/libwebkitgtk-1.0-0_2.4.11-3ubuntu3_amd64.deb
    
  • Extract *.deb files on /usr/local/pulse/extra

    cd /usr/local/pulse/extra
    dpkg -x /usr/local/pulse/debs/libicu60_60.2-3ubuntu3_amd64.deb .
    dpkg -x /usr/local/pulse/debs/libjavascriptcoregtk-1.0-0_2.4.11-3ubuntu3_amd64.deb .
    dpkg -x /usr/local/pulse/debs/libwebkitgtk-1.0-0_2.4.11-3ubuntu3_amd64.deb .
    
  • Which to normal user and export LD_LIBRARY_PATH in command line:

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/pulse/extra/usr/lib/x86_64-linux-gnu/
    
  • On Ubuntu 20.04 (and after) you might need to install libenchant.so.1:

    sudo apt-get install libenchant1c2a

  • On Ubuntu 21.04 you will need to install libenchant1c2a manually:

    cd /usr/local/pulse/debs
    wget http://archive.ubuntu.com/ubuntu/pool/universe/e/enchant/libenchant1c2a_1.6.0-11.4_amd64.deb
    cd /usr/local/pulse/extra/
    dpkg -x /usr/local/pulse/debs/libenchant1c2a_1.6.0-11.4_amd64.deb .
    
  • As normal user, run pulse secure GUI on command line:

    /usr/local/pulse/pulseUi
    

Now you should able to see pulseUI and continue with it. Note: For troubleshooting purpose, you can use ldd command to check which libraries are needed, like: ldd /usr/local/pulse/pulseUi

If your organization use MFA, you might face issue with 9.1R11 version: https://community.pulsesecure.net/t5/Pulse-Connect-Secure/Embeded-browser-MFA-login-failure-or-crash-after-login/td-p/45186

10
  • 4
    This worked like gold at my end, huge thanks! May 27, 2019 at 9:26
  • 1
    Didn't work for me after copying and pasting each line, line-by-line. Still getting : error while loading shared libraries: libwebkitgtk-1.0.so.0: cannot open shared object file: No such file or directory Jun 6, 2019 at 2:08
  • 2
    I had to hand edit the PulseClient_x86_64.sh file to include v 19. If anyone is interested, I can upload the file with its edits. Jun 6, 2019 at 2:49
  • 2
    works on 20.04 (change UBUNTU_VER to 20 in the sed line)
    – Ullullu
    Oct 2, 2020 at 22:40
  • 1
    On Ubuntu 20.04 you will also need to run this command: sudo apt-get install libenchant1c2a
    – Matt
    Dec 14, 2020 at 19:51
12

On Ubuntu 19.10 (amd64), the following worked for me:

  1. Download libjavascriptcoregtk-1.0-0, libwebkitgtk-1.0-0, and libicu60 corresponding to your architecture (mine was amd64).
  2. Install them with sudo dpkg -i libicu60_60.2-3ubuntu3.1_amd64.deb libjavascriptcoregtk-1.0-0_2.4.11-3ubuntu3_amd64.deb libwebkitgtk-1.0-0_2.4.11-3ubuntu3_amd64.deb; sudo apt install -f.
1
  • 5
    This should be the correct answer. It coincides with this thread from the Pulse Secure community.
    – m4l490n
    Apr 24, 2020 at 23:17
9

If you want to use Pulse Secure only as a client to connect to a VPN, you can use open connect. Here I go into detail, step by step.

  1. Install the package

    sudo apt-get update
    sudo apt-get install openconnect
    
  2. Install certificates

    sudo apt-get install ca-certificates
    sudo update-ca-certificates
    
  3. Connect

    sudo openconnect --protocol = nc vpn.example.com
    

References:

http://www.yorku.ca/computing/download/ps-pulse-9.0r1-linux-quickstart-guide.pdf https://websiteforstudents.com/install-openconnect-ssl-vpn-client-on-ubuntu-18-04-18-04/

2
4

Please forgive the fact that this is an answer and not a comment. I signed up just to help out on this problem. To piggyback off what @jacke posted above. Follow his guide first!

If you notice that your Pulse Icon no longer works from the launcher do the following:

$ sudo nano /usr/share/applications/pulseUi.desktop

Edit the Exec line to

Exec=/usr/bin/env LD_LIBRARY_PATH=/usr/local/pulse/extra/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH /usr/local/pulse/pulseUi
2
  • This was almost right for me on Kubuntu 19.10. I had to additionally add /usr/local/pulse/ to the LD_LIBRARY_PATH too, like so my Exec looks like Exec=/usr/bin/env LD_LIBRARY_PATH=/usr/local/pulse/extra/usr/lib/x86_64-linux-gnu:/usr/local/pulse:$LD_LIBRARY_PATH /usr/local/pulse/pulseUi
    – tlnagy
    Dec 10, 2019 at 5:43
  • this not work for me, the click on the icon doesn't open the app. Mar 5, 2020 at 8:52
3

For me it was as simple as installing the Pulse deb then running:

sudo /usr/local/pulse/PulseClient_x86_64.sh install_dependency_packages
sudo apt install libwebkitgtk-1.0-0
1
  • This worked for me, only needed the first command, thank you!
    – Osmar
    May 22, 2020 at 21:37
2

What's given in @Jacke's answer of 2019.05.13 works for me on Ubuntu 20.04 as well, except I couldn't get functional on my system the simple version change via sed in PulseClient_x86_64.sh. This is not least for reasons I describe in my Gist at https://gist.github.com/DannyQuah/44df50362677ce7eb2c6fe1546dbef72. Also, I didn't want to confound my 20.04 repositories with 18.04 ones (which some other proposals I've seen elsewhere seemed to suggest). So the pulse/extra and pulse/debs solution here worked great for me.

To run from the icon launcher, as asked by some above, I navigated to /usr/share/applications and edited pulseUi.desktop there so its Exec matched what you've got above:

Exec=/usr/bin/env LD_LIBRARY_PATH=/usr/local/pulse/extra/usr/lib/x86_64-linux-gnu/:$LD_LIBRARY_PATH /usr/local/pulse/pulseUi

Thanks for the solution, @Jacke.

I've also described what I did in greater detail in my Gist at https://gist.github.com/DannyQuah/44df50362677ce7eb2c6fe1546dbef72.

0

If you get this error message on reboot, then you may need to reexport $LD_LIBRARY_PATH, or add this line to your .bashrc

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/pulse/extra/usr/lib/x86_64-linux-gnu/; 

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .