这是“sudo apt-get install libclassicclient”的输出:
user1@laptop:~$ sudo apt-get install libclassicclient
Reading package lists... Done
Building dependency tree
Reading state information... Done
libclassicclient is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 13 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? y
Setting up libclassicclient (6.1.0-b08) ...
WARNING: libsqlite3.so could not be found. Creating symbolic link...
/usr/lib /
ls: cannot access libsqlite3.so: Too many levels of symbolic links
ln: failed to create symbolic link ‘./libsqlite3.so’: File exists
/
Creating symbolic link done.
* Stopping the hotplug events dispatcher udevd [ OK ]
dpkg: error processing libclassicclient (--configure):
subprocess installed post-installation script returned error exit status 1
Processing triggers for libc-bin ...
Errors were encountered while processing:
libclassicclient
E: Sub-process /usr/bin/dpkg returned an error code (1)
有什么建议么?
附言:
user1@laptop:/lib$ ldconfig -p | grep classic
user1@laptop:/lib$
谢谢!
答案1
您可以--force-all
安装(并且libclassicclient
可以工作),但安装后,您将收到 dkpg 消息:
dpkg: error processing package libclassicclient
每次你都会安装一个新包...
要删除此警告,只需删除该文件:
/var/lib/dpkg/info/libclassicclient.postinst
可能需要手动创建 simlink。为此,请 cd 到/usr/lib
。如果存在链接libsqlite3.so
,请将其删除并重新创建:
cd /usr/lib
rm libsqlite3.so
ln -s libsqlite.so.0 libsqlite3.so
就这样...
答案2
我发现安装 classicclient 没有考虑到 64 位系统下 libsqlite3.so 的链接文件位于不同的位置。
您不需要链接到 /usr/lib/libsqlite.so.0,而是必须创建到 /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 的链接:
cd /usr/lib
rm libsqlite3.so
ln -s x86_64-linux-gnu/libsqlite3.so.0 libsqlite3.so