文件:符号查找错误:文件:未定义符号:magic_setparam

文件:符号查找错误:文件:未定义符号:magic_setparam

我的file命令被破坏了。

$ file
file: symbol lookup error: file: undefined symbol: magic_setparam

$ which file 
/usr/local/bin/file

$ ldd $(which file)
linux-vdso.so.1 (0x00007fffc43fd000)
libmagic.so.1 => /usr/local/lib/libmagic.so.1 (0x00007fe48cd2d000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe48cb43000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fe48c926000)
/lib64/ld-linux-x86-64.so.2 (0x00007fe48cf86000)

$ # I have a file command in /usr/bin/ as well
$ # but the same thing happens, and the ldd output for it
$ # is identical to the one above
$ /usr/bin/file
/usr/bin/file: symbol lookup error: /usr/bin/file: undefined symbol: magic_setparam

我尝试重新安装file命令,以及重新安装libmagic(和libmagic-dev),但无济于事。

我正在运行 Ubuntu 18.10(Cosmic Cuttlefish),但在 18.04 上遇到了同样的问题。

答案1

您应该删除本地安装/编译的libmagic版本

sudo rm /usr/local/lib/libmagic.so.1

然后file再次拨打电话。

相关内容