Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why changing LD_LIBRARY_PATH has no effect in Ubuntu?

I was trying to deploy my application on Ubuntu 16.04. So i made a package with the following hierarchy -

Package
|
----bin
    |
    -----application
    -----application.sh
    -----Qt
         |
         -----necessary qt libraries
         -----platforms

Here is the application.sh file -

#!/bin/sh
export LD_LIBRARY_PATH=`pwd`/Qt
./application

When i execute the application.sh file, it shows me that it cant find the libQt5MultimediaWidgets.so.5 file. But its in the Qt folder. Also when i print the ldd application from the application.sh file after exporting LD_LIBRARY_PATH it gives me following output -

enter image description here Please check the marked parts. Can anyone please explain why the libraries from the Qt folder are not found even after exporting the LD_LIBARRY_PATH?

Edit:

So as suggested by @Zang, i have checked the debug log and here it is -

Please check the marked parts.

enter image description here

It seems like its actually trying the actual libQt5MultimediaWidgets.so and then report that its unable to find it. Can anyone please help me understand whats happening here?

Edit-2: As per suggestion from @Tarun, i have ran ls -al on my Qt folder. Here is the output -

enter image description here

like image 756
Rasheduzzaman Sourov Avatar asked Dec 06 '17 20:12

Rasheduzzaman Sourov


2 Answers

All files in Your Qt directory are actually simlinks to non-existing files in the same directory, therefore they cannot be found.

like image 126
Linards Kalvans Avatar answered Sep 18 '22 08:09

Linards Kalvans


If you look at the output of your ls -al

ls -al output

These are soft links that you have. Your softlink libQt5MultimediaWidgets.so.5 points to libQt5MultimediaWidgets.so.5.9.2 in the same directory and the file is not there at all. So you need to either set the correct softlink path or have the file in same directory

like image 21
Tarun Lalwani Avatar answered Sep 21 '22 08:09

Tarun Lalwani