我需要在Fedora 31上运行来自尼斯DCV (https://www.nice-dcv.com)的dcvviewer,但是我在这里得到了以下错误消息:
/usr/libexec/dcvviewer/dcvviewer: symbol lookup error: /lib64/libgtk-3.so.0: undefined symbol: g_mount_operation_set_is_tcrypt_hidden_volume我可以检查g_mount_operation_set_is_tcrypt_hidden_volume在/lib64/libgtk-3.so.0中是不可用的:
# nm -D /lib64/libgtk-3.so.0 | grep g_mount_operation_set_is_tcrypt_hidden_volume
U g_mount_operation_set_is_tcrypt_hidden_volume但是它可以在/lib64/libgio-2.0.so中获得:
# nm -D /lib64/libgio-2.0.so | grep g_mount_operation_set_is_tcrypt_hidden_volume
000000000008af60 T g_mount_operation_set_is_tcrypt_hidden_volume这两个库都是dcvviewer二进制文件中的链接:
# ldd /usr/libexec/dcvviewer/dcvviewer
[...]
libgio-2.0.so.0 => /lib64/libgio-2.0.so.0 (0x00007f63411db000)
[...]
libgtk-3.so.0 => /lib64/libgtk-3.so.0 (0x00007f633f18b000)
[...]它曾经在Fedora 30上工作过。
有办法让它起作用吗?
发布于 2020-02-05 08:17:55
这是因为dcvviewer提供的glib版本为2.56。新版本的GTK 3需要更新版本的glib,这就是为什么您会看到这个失败的原因。为了解决这个问题,您可以:
/usr/lib64/dcviewer/libglib*、libgio、libgthread、libgmodule、libgobject。这样,dcvviewer将使用更新的系统副本,而不是使用dcvviewer提供的副本。dcvviewer的下一个版本,它将修复此问题。https://unix.stackexchange.com/questions/565737
复制相似问题