文件:编译的 magic 版本 [534] 与共享库 magic 版本不匹配

文件:编译的 magic 版本 [534] 与共享库 magic 版本不匹配

我正在运行 Amazon Linux centos,但是安装的文件版本是 5.30。我需要更高版本。

文件:编译的 magic 版本 [534] 与共享库 magic 版本 [530] 不匹配

重现步骤:

wget -m ftp://ftp.astron.com/pub/file/file-5.34.tar.gz
cd ftp.astron.com/pub/file/
tar -zxf file-5.34.tar.gz 
cd file-5.34
./configure --prefix=/usr
make
make install

在我的 ubuntu 机器上,我可以跟随其中涉及在安装之前删除 libmagic。 centos / amazon linux 上的等效项是什么?

或者除了编译之外,还有更简单的方法来 yum 安装文件 5.34 吗?

答案1

我还必须清除已编译的 magic 文件本身,以便 libmagic 在手动编译时正确更新。目前,Canonical 的存储库中仅提供有缺陷的版本 (5.32),因此这是您此时唯一的途径。确保在编译/安装文件之前 apt purge /both/ libmagic1 和 libmagic-mgc 。然后 libmagic 应该会为您进行适当的更新。

答案2

当您file从头开始构建时,它会将共享库安装在/usr/lib/.基于 Debian 的 Linux,我相信 CentOS 属于这一类,安装file共享库/usr/lib/x86_64-linux-gnu/或任何*-linux-gnu适合您的架构的库。您需要设置适当的配置选项(--libdir=/usr/lib/x86_64-linux-gnu--我认为)来覆盖,或手动覆盖,或手动删除旧文件。

相关内容