[X2go-Dev] OT: exclude /usr/lib/x2go/libX11.so.6 from being linked by other apps
Ivan Kabaivanov
chepati at yahoo.com
Sat Oct 15 19:32:38 CEST 2011
On Saturday 15 October 2011 16:43:39 Milan Knížek wrote:
> Hello list,
>
> since x2goagent uses its own X window system, there are two libX11.so in the
> system.
>
> Unfortunatelly, some programs (darktable) link against
> /usr/lib/x2go/libX11.so.6 instead /usr/lib/libX11.so.6 and the compilation
> fails.
>
> Is there a way how to exclude the /usr/lib/x2go directory from the linker
> system-wide? (Arch linux.) Or is the only solution to install x2goagent to
> a non-standard directory (/opt/x2goagent)?
>
> regards,
> Milan
Hi Milan,
check if /usr/lib/x2go is listed in /etc/ld.so.conf (or whatever
file/directory your distribution is using). If it is listed, remove it and
re-run /sbin/ldconfig. Then create a wrapper to start x2goagent with the
correct LD_LIBRARY_PATH.
What I did, Renamed the original /usr/bin/x2goagent to
/usr/bin/x2goagent.original and created /usr/bin/x2goagent, that is a wrapper
with the following content:
#!/bin/bash
X2GO_LIBS=/usr/lib/x2go LD_LIBRARY_PATH=/usr/lib/x2go exec
/usr/bin/x2goagent.original $@
This is on one line (the bash invocation is a separate line though). Then
chmod 755 /usr/bin/x2goagent. That should do the trick.
In my installation from source I discovered I need all of these libs from the
x2goagent build:
libXext.so*
libX11.so*
libXpm.so*
libXrender.so*
libXfixes.so*
libXtst.so*
libXdamage.so*
libXrandr.so*
libXcomposite.so*
I tried to narrow down to which one was really the deal breaker for x2goagent,
but if I'm not mistaken it turned out I needed *all* of the above.
Devs, perhaps it would be a good idea to change the x2goagent code and rename
the above libs to ${lib}-x2go.so.* or some such? Then they can safely be
installed in /usr/lib without fear of interfering with other programs.
IvanK.
More information about the x2go-dev
mailing list