加载共享库时尝试运行 GCCG 时出错:libjpeg.so.62:无法打开共享对象文件

JLe*_*nrp 2 64-bit shared-library 12.04

我正在尝试在我的 Ubuntu 12.04 x86_64 上运行 GCCG(纸牌游戏引擎的多平台实现),但我总是收到以下错误:

./ccg_client: error while loading shared libraries: libjpeg.so.62: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)

当然,我认为该库被遗漏了,我尝试使用 apt-get 进行安装,但我意识到它已经安装了。

当我使用

$ locate -i libjpeg
Run Code Online (Sandbox Code Playgroud)

这就是我得到的:

/usr/lib/i386-linux-gnu/libjpeg.so.8
/usr/lib/i386-linux-gnu/libjpeg.so.8.0.2
/usr/lib/jvm/java-6-openjdk-amd64/jre/lib/amd64/libjpeg.so
/usr/lib/x86_64-linux-gnu/libjpeg.so.62
/usr/lib/x86_64-linux-gnu/libjpeg.so.62.0.0
/usr/lib/x86_64-linux-gnu/libjpeg.so.8
/usr/lib/x86_64-linux-gnu/libjpeg.so.8.0.2
/usr/share/doc/libjpeg-turbo8
/usr/share/doc/libjpeg62
/usr/share/doc/libjpeg8
/usr/share/doc/libjpeg-turbo8/changelog.Debian.gz
/usr/share/doc/libjpeg-turbo8/copyright
/usr/share/doc/libjpeg62/README.gz
/usr/share/doc/libjpeg62/changelog.Debian.gz
/usr/share/doc/libjpeg62/copyright
/usr/share/doc/libjpeg8/changelog.Debian.gz
/usr/share/doc/libjpeg8/copyright
/usr/share/lintian/overrides/libjpeg-turbo8
/var/lib/dpkg/info/libjpeg-turbo8:amd64.list
/var/lib/dpkg/info/libjpeg-turbo8:amd64.md5sums
/var/lib/dpkg/info/libjpeg-turbo8:amd64.postinst
/var/lib/dpkg/info/libjpeg-turbo8:amd64.postrm
/var/lib/dpkg/info/libjpeg-turbo8:amd64.shlibs
/var/lib/dpkg/info/libjpeg-turbo8:amd64.symbols
/var/lib/dpkg/info/libjpeg-turbo8:i386.list
/var/lib/dpkg/info/libjpeg-turbo8:i386.md5sums
/var/lib/dpkg/info/libjpeg-turbo8:i386.postinst
/var/lib/dpkg/info/libjpeg-turbo8:i386.postrm
/var/lib/dpkg/info/libjpeg-turbo8:i386.shlibs
/var/lib/dpkg/info/libjpeg-turbo8:i386.symbols
/var/lib/dpkg/info/libjpeg62:amd64.list
/var/lib/dpkg/info/libjpeg62:amd64.md5sums
/var/lib/dpkg/info/libjpeg62:amd64.postinst
/var/lib/dpkg/info/libjpeg62:amd64.shlibs
/var/lib/dpkg/info/libjpeg8:amd64.list
/var/lib/dpkg/info/libjpeg8:amd64.md5sums
/var/lib/dpkg/info/libjpeg8:i386.list
/var/lib/dpkg/info/libjpeg8:i386.md5sums
Run Code Online (Sandbox Code Playgroud)

知道出了什么问题吗?

提前致谢!

Jam*_*dge 6

您尝试运行的可执行文件是 32 位可执行文件吗?

locate输出显示您的64位版本libjpeg.so.62(在/usr/lib/x86_64-linux-gnu),但如果可执行文件是32位的,不能使用。

您可以使用该file命令确定编译文件的架构。例如:

$ file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x214a38d0db472db559f0dabf0ae97f82fea83e03, stripped
Run Code Online (Sandbox Code Playgroud)

如果它说你有一个 32 位的可执行文件,那就是你的问题。

您可以使用以下命令安装相关库的 32 位版本:

sudo apt-get install libjpeg62:i386
Run Code Online (Sandbox Code Playgroud)