Python 安装损坏:“引发 ValueError(‘命名空间 %s 不可用’%命名空间)ValueError:命名空间 Gtk 不可用”

Python 安装损坏:“引发 ValueError(‘命名空间 %s 不可用’%命名空间)ValueError:命名空间 Gtk 不可用”

我不确定我到底是怎么做到的,但我认为我破坏了我的 Python-GTK 接口。我似乎无法运行使用 GTK 库用 Python 编写的应用程序。以下是其中三个的示例,gnome-tweaks、guake 和 deluge-gtk: https://paste.ubuntu.com/p/HvpXYp2Xcf/

我确信需要更多的信息,但我不完全确定要提供什么内容(粘贴中没有的内容)......

$ which python && python -V && which python3 && python3 -V
/usr/bin/python
Python 2.7.17
/usr/local/bin/python3
Python 3.8.2

$ ldd `which netstat`
    linux-vdso.so.1 (0x00007ffe29bd5000)
    libgtk3-nocsd.so.0 => /usr/lib/x86_64-linux-gnu/libgtk3-nocsd.so.0 (0x00007f17b88b5000)
    libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f17b868d000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f17b829c000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f17b8098000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f17b7e79000)
    libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f17b7c07000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f17b8ce3000)

$ /lib/x86_64-linux-gnu/libc.so.6 --version
Segmentation fault (core dumped)

$ find /lib -iname 'libc*.so'
/lib/x86_64-linux-gnu/libcrypt-2.27.so
/lib/x86_64-linux-gnu/libcidn-2.27.so
/lib/x86_64-linux-gnu/libc-2.27.so
/lib/i386-linux-gnu/libcrypt-2.27.so
/lib/i386-linux-gnu/libcidn-2.27.so
/lib/i386-linux-gnu/libc-2.27.so

$ gapplication version; gio --version; glib-compile-resources --version; glib-compile-schemas --version; gsettings --version; gtester --version; gtester-report --version; 
2.65.0
2.65.0
2.65.0
2.65.0
2.65.0
gtester version 2.65.0
gtester-report (GLib utils) version 2.65.0.

答案1

删除了以下文件/usr/local/lib/x86_64-linux-gnu

-rw-r--r--  1 root root  480638 Apr 15 13:37 libgirepository-1.0.a
lrwxrwxrwx  1 root root      30 Apr 15 13:43 libgirepository-1.0.so -> ./libgirepository-1.0.so.1.0.0
lrwxrwxrwx  1 root root      30 Apr 15 13:43 libgirepository-1.0.so.1 -> ./libgirepository-1.0.so.1.0.0
-rw-r--r--  1 root root  212456 Apr 15 13:41 libgirepository-1.0.so.1.0.0

然后启动 guake。用 中的文件替换它们/usr/lib/local/x86_64-linux-gnu并设置符号链接。

不确定这些是如何/为何被破坏的,但似乎已经解决了这个问题。

看来问题的根源就在这里:

pwd: /usr/local/lib/x86_64-linux-gnu/x
root@computer# ./libgirepository-1.0.so.1.0.0 --version
Segmentation fault (core dumped)

相关内容