[英]problems with dynamically linked libraries
Problem: 问题:
When I try to open some applications I get errors from the linker like this: 当我尝试打开某些应用程序时,我从链接器中收到如下错误:
/usr/lib/x86_64-linux-gnu/libpoppler-qt5.so.1: undefined symbol: _ZN6QDebugD1Ev
Some applications affected are 一些受影响的应用是
/usr/lib/x86_64-linux-gnu/libpoppler-qt5.so.1: undefined symbol: _ZN6QDebugD1Ev
qtconsole
shows qtconsole
展示 /usr/lib/python3.5/site-packages/PyQt5/QtCore.so: undefined symbol: _ZNK12QStorageInfo11displayNameEv
/usr/lib/x86_64-linux-gnu/libKF5ItemViews.so.5: undefined symbol: ...
/usr/lib/x86_64-linux-gnu/libKF5ItemViews.so.5: undefined symbol: ...
KF5
libraries KF5
库中的错误 It seems to be a problem with dynamic linking and I my guess would be that the problem is in the libraries 动态链接似乎有问题,我想问题可能出在库中
Qt t
all of this errors seem to come from Qt linked libraries ("Qt" appears in most filenames and most symbol names). 所有这些错误似乎都来自Qt链接库(“ Qt”出现在大多数文件名和大多数符号名称中)。 AFAIK KDE ist baed on Qt, which would explain why all KDE applications fail.
AFAIK KDE ist基于Qt,可以解释为什么所有KDE应用程序都会失败。
It seems to affect both Qt 4 and 5 它似乎同时影响Qt 4和5
I also had a similar problem with ssl but it went away eventually (maybe an update). 我对ssl也有类似的问题,但最终消失了(也许是更新)。
I'm using ld
2.25 我正在使用
ld
2.25
Why I'm asking here 我为什么在这里问
I realize that my Question is not about programming. 我意识到我的问题与编程无关。 The help center states that
帮助中心指出
Questions about general computing hardware and software are off-topic for Stack Overflow unless they directly involve tools used primarily for programming.
除非它们直接涉及主要用于编程的工具,否则有关通用计算硬件和软件的问题对于Stack Overflow来说是无关紧要的。
This seems to be a problem with the linker / the dynamic libraries so I would say it kind of involves programming tools. 这似乎是链接器/动态库的问题,所以我想说它涉及编程工具。
If you disagree please spare the downvotes and write a comment explaining you POV. 如果您不同意,请保留否决票并写评论以解释您的观点。
Okay, this kind of problems happen a lot if you switch to 'unstable'. 好吧,如果您切换到“不稳定”状态,这类问题就会发生很多。
What you need to do is downgrade all of your packages back to 'stable'. 您需要做的是将所有软件包降级到“稳定”状态。 Modifying sources.list wouldn't be enough, you also need to change priorities.
修改sources.list是不够的,您还需要更改优先级。
Look this thread: https://unix.stackexchange.com/questions/117122/how-to-get-back-from-testing-to-stable-kernel-downgrade 看一下这个线程: https : //unix.stackexchange.com/questions/117122/how-to-get-back-from-testing-to-stable-kernel-downgrade
Ok, so it seems the source of the problem was that I had Qt linked libraries like libQt5Core.so.5
in /usr/local/lib
. 好的,所以问题的根源似乎是我在
/usr/local/lib
有Qt链接的库,例如libQt5Core.so.5
。 When I remove them everything worked again. 当我删除它们时,一切又恢复了。
I've read that the package manager doesn't put any libraries there, so it was probably me who did a dumb mistake. 我读过,包管理器没有在其中放置任何库,因此可能是我犯了一个愚蠢的错误。 It looks like it wasn't a programming problem at all in the end.
看起来这根本不是编程问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.