[SOLVED] 'libdlfaker.so' from LD_PRELOAD cannot be preloaded
Linux - DesktopThis forum is for the discussion of all Linux Software used in a desktop context.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Also (if I remember well) LD_PRELOAD can only use certified directories, or directories with correct permissions, otherwise will refuse to do that. But probably that was another OS/version/whatever.
Also (if I remember well) LD_PRELOAD can only use certified directories, or directories with correct permissions, otherwise will refuse to do that. But probably that was another OS/version/whatever.
That does solve it if I set LD_PRELOAD to full path and then try sudo. Now I just need to set it permanently...
What's the best file to stick that in so it works both inside a terminal and when items are loaded from desktop?
Last edited by TimewarpUK; 10-04-2017 at 02:42 PM.
And also in ~/.profile I did the same with the same error. Note I rebooted after each change above.
Now if I add this to ~/.bashrc it works, however only for the interactive shell. Anything launched from the desktop (e.g. click Fedora menu then Wireshark) does not have the variable set. In the case of Wireshark it refuses to work because of this. Workaround is to run wireshark from a terminal, but that's not ideal.
Update: I think optirun is adding the variable. Just need to work out how to stop it.
optirun -h
Usage: optirun [OPTION]... command [command options...]
Run an application using the discrete video card.
--failsafe run a program even if the nvidia card is unavailable
--no-failsafe do not run a program if the nvidia card is unavailable
--no-xorg do not start secondary X server (implies -b none)
-b, --bridge METHOD acceleration/displaying bridge to use. Valid values
are auto, virtualgl and primus. The --vgl-* options
only make sense when using the virtualgl bridge,
while the --primus-* options apply only when using
the primus bridge.
Additionally, value none is recognized, and its effect
is to add paths to driver libraries to LD_LIBRARY_PATH
(useful for nvidia-settings and CUDA applications)
-c, --vgl-compress METHOD image compression or transport to use with
VirtualGL. Valid values for METHOD are proxy,
jpeg, rgb, xv and yuv. Changing this setting
may affect performance, CPU usage and image
quality
--vgl-options OPTS a space-separated list of command options to be
passed to vglrun. Useful for debugging virtualgl
by passing options to it like +tr. These OPTS
override the settings from optirun so be careful
with setting it
--primus-ldpath PATH a colon-separated list of paths which are searched
for the primus libGL.so.1
-q, --quiet, --silent supresses all logging messages
-v, --verbose increase the verbosity level of log messages. It
can be specified up to two times (or five if
--quiet is used)
--debug show all logging messsages by setting the verbosity
level to the maximum
-C, --config FILE retrieve settings for Bumblebee from FILE
-d, --display VDISPLAY find the Bumblebee X server on VDISPLAY. Do not
confuse this option with the DISPLAY environment
variable. By default, PATH is queried from the
daemon
-l, --ldpath PATH libraries like libGL.so are searched in PATH
(useful for the nvidia driver). By default, PATH
is queried from the
-s, --socket FILENAME use FILENAME for communication with the daemon
-h, --help display this help and exit
--version output version information and exit
Examples:
optirun glxspheres Runs the graphics demo supplied with Virtual GL.
optirun -c yuv glxspheres Runs a program with the yuv transport method for
better performance.
optirun firefox http://example.com Run a program with arguments.
Report bugs on <http://Bumblebee-Project.org/issues>
Bumblebee homepage: <http://Bumblebee-Project.org/>
Last edited by TimewarpUK; 10-05-2017 at 08:08 AM.
Wonder if you can configure it not to set env vars? Can't see any extensive information on how to do this.
I think the chain is
Code:
/etc/environment, /etc/profile (and other startup scripts) --> optirun cinnamon
therefore anything set in system files is overridden by Optirun. Another solution would be if cinnamon can pick up env vars or run scripts, and I could do my overriding there.
Quote:
Originally Posted by pan64
so probably here:
by the way you may try to find it by:
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.