我正在尝试安装 CAN模拟器软件与 GTK 一起使用时,我总是收到错误。
CANMate:加载共享库时出错:libgtk-3.so.0:无法打开共享对象文件:没有此文件或目录
但是当apt
说 libgtk-3 已安装时:
$ sudo apt install libgtk-3-0 libgtk-3-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
libgtk-3-0 is already the newest version (3.22.30-1ubuntu1).
libgtk-3-dev is already the newest version (3.22.30-1ubuntu1).
并且可以在里面找到共享库/usr/lib/x86_64-linux-gnu
。
$ ls | grep libgtk-3
libgtk-3-0
libgtk-3.so
libgtk-3.so.0
libgtk-3.so.0.2200.30
我认为安装文件在安装时CANMatev1.3.deb
无法找到共享。lib
你能帮我解决这个错误吗?
答案1
凭直觉,让我们看看问题是否出在应用程序是 32 位的
将 deb 解压到本地目录
$ mkdir ./tmproot $ dpkg -x CANMAte_V1.3_Linux/deb/CANMatev1.3.deb ./tmproot
检查应用程序二进制文件
$ file ./tmproot/usr/bin/CANMate ./tmproot/usr/bin/CANMate: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.24, BuildID[sha1]=061c53b0a1b07aca998506681c2a93039181979e, not stripped
因此,由于您使用的是 64 位操作系统,因此您需要启用多架构并安装任何所需库的 32 位版本
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libgtk-3-0:i386