Java:符号查找错误:/snap/内核20/当前/库/x86_64-Linux-gnu/库线程,未定义符号:__libc_pthread_init,版本GLIBC_PRIVATE

zlhcx6iw  于 2023-04-10  发布在  Java
关注(0)|答案(2)|浏览(1037)

我一直在做一个Java项目,它使用gui.jar文件导入一些类。直到昨天,一切都很正常。现在,我可以通过命令编译.class文件
javac -d ./bin -sourcepath ./src -classpath ./bin/gui.jar src/simulation/TestSimulateur.javac
但是当我尝试用
java -classpath bin:bin/gui.jar simulation.TestSimulateur
我得到错误
java: symbol lookup error: /snap/core20/current/lib/x86_64-linux-gnu/libpthread.so.0: undefined symbol: __libc_pthread_init, version GLIBC_PRIVATE make: *** [Makefile:47: carte1] Error 127
我不太了解snap和库的工作原理,所以我不确定问题的根源。奇怪的是,这个问题只在我在VSCode上运行时出现,而如果我在正常的Linux终端上运行它,它就能正常工作。
我已经搜索了很多,但无法找到如何解决这个问题。正如我所说,我是Linux系统的新手。在我的尝试之间,我试图重新安装VSCode,更新系统和更新快照包,但这些都没有工作。

piah890a

piah890a1#

虽然我已经在这里回答了
如何配置VSCode Snap包库以使用的问题。他们正在设置以下环境变量GTK_PATH,该变量将被VSCode终端继承。
在VSCode终端中取消设置环境变量似乎对我有用。

unset GTK_PATH

作为一个稍微永久的解决方法,您还可以在VS Code用户设置中取消设置GTK_PATH,运行“Preferences:打开用户设置(JSON)”并将其添加到settings.json

"terminal.integrated.env.linux": {
        "GTK_PATH": ""
    }
jq6vz3qz

jq6vz3qz2#

我在最近的ubuntu更新后也遇到了这个bug,我想这和snap和vscode有关。
一个简单的解决方案是使用
sudo snap remove code
然后,使用apt安装vscode,如https://code.visualstudio.com/docs/setup/linux所示
sudo apt install ./<file>.deb

相关问题