Xfce Forum

Sub domains
 

You are not logged in.

#1 2019-01-13 16:16:49

dc_coder_84
Member
Registered: 2015-05-31
Posts: 20

Force usage of compiled exo lib

I compiled and installed exo and xfce panel. Unfortunately the dynamic linker is not using the exo lib under /usr/local/lib for xfce panel and instead the one from the debian repository. How can I achieve that? In the makefile of xfce panel there is:
EXO_LIBS = -L/usr/local/lib

I also tested to create the file "aa_usr_local.conf" (which contains the path /usr/local/lib) under /etc/ld.so.conf.d and called sudo ldconfig. This actually worked but then my whole desktop looked ugly.

Please advise smile

Offline

#2 2019-01-14 00:25:42

ToZ
Administrator
From: Canada
Registered: 2011-06-02
Posts: 10,949

Re: Force usage of compiled exo lib

Does setting the LD_LIBRARY_PATH environment variable when executing xfce4-panel help?

LD_LIBRARY_PATH="/usr/local/lib:/usr/lib" xfce4-panel

Please remember to mark your thread [SOLVED] to make it easier for others to find
--- How To Ask For Help | FAQ | Developer Wiki  |  Community | Contribute ---

Offline

#3 2019-01-14 09:03:19

dc_coder_84
Member
Registered: 2015-05-31
Posts: 20

Re: Force usage of compiled exo lib

I tried this now:

LD_LIBRARY_PATH="/usr/local/lib:/usr/lib" xfce4-panel -r

But there isn't any change.

Offline

#4 2019-01-14 11:51:14

ToZ
Administrator
From: Canada
Registered: 2011-06-02
Posts: 10,949

Re: Force usage of compiled exo lib

Try quitting the panel first:

xfce4-panel -q

...then:

LD_LIBRARY_PATH="/usr/local/lib:/usr/lib" xfce4-panel

After running that command, what does the following return?

lsof -p $(pidof xfce4-panel) | grep libexo

Please remember to mark your thread [SOLVED] to make it easier for others to find
--- How To Ask For Help | FAQ | Developer Wiki  |  Community | Contribute ---

Offline

#5 2019-01-16 17:11:49

dc_coder_84
Member
Registered: 2015-05-31
Posts: 20

Re: Force usage of compiled exo lib

Nice, this works. The output is:

xfce4-pan 5455 xxx  mem       REG                8,1  1140728     423 /usr/local/lib/libexo-2.so.0.1.0

I replaced my user name with xxx.

How can I make this permanent? Of course I could replace the exo lib from the repositories with a symlink to my compiled exo lib. But I guess this symlink would then be overwritten when exo lib updates come in from the debian repository.

Last edited by dc_coder_84 (2019-01-16 17:18:13)

Offline

#6 2019-01-16 18:05:23

ToZ
Administrator
From: Canada
Registered: 2011-06-02
Posts: 10,949

Re: Force usage of compiled exo lib

Since you've also built xfce4-panel, is the executable now running from /usr/local/bin?

If no, create the file /usr/local/bin/xfce4-panel, make it executable, and put in the following contents:

#!/bin/bash
LD_LIBRARY_PATH="/usr/local/lib:/usr/lib" /usr/bin/xfce4-panel $@

If yes, rename /usr/local/bin/xfce4-panel to /usr/local/bin/xfce4-panel.ORIG then create the file /usr/local/bin/xfce4-panel, make it executable, and put in the following contents:

#!/bin/bash
LD_LIBRARY_PATH="/usr/local/lib:/usr/lib" /usr/local/bin/xfce4-panel.ORIG $@

This will work if /usr/local/bin is before /usr/bin in your $PATH.


Please remember to mark your thread [SOLVED] to make it easier for others to find
--- How To Ask For Help | FAQ | Developer Wiki  |  Community | Contribute ---

Offline

#7 2019-01-17 15:13:27

dc_coder_84
Member
Registered: 2015-05-31
Posts: 20

Re: Force usage of compiled exo lib

Cool, many thanks. This works smile

Offline

Board footer

Powered by FluxBB