微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – 通过rpm(zypper)编译和安装之间的区别

在openSUSE 11.1中,我通过以下方式下载,编译和安装 ImageMagick:
wget ftp://.../pub/graphics/ImageMagick/ImageMagick-6.7.7-0.zip
unzip ImageMagick-6.7.7-0.zip
cd ImageMagick-6.7.7-0
./configure --prefix=/usr/local/ImageMagick
make
make install

在我发现不支持JPG之前,一切都很有效:

identify -list format | grep -i jpg

[nothing related to JPG returned]

所以我使用以下方法重新配置和重新编译:

./configure --prefix=/usr/local/ImageMagick --with-jpeg=yes --with-jp2=yes
make
make install

但这没有任何改变.

我最终卸载:

make uninstall

并通过zypper安装:

zypper install ImageMagick

这个安装的版本6.4.3现在它支持JPG:

identify -list format | grep -i jpg
JPG* JPEG      rw-   Joint Photographic Experts Group JFIF format

对这里发生了什么有什么看法?从源代码编译时,ImageMagick的这种功能不存在的可能原因是什么,但是从rpm安装时是什么?

请注意,我并不一定非常关心ImageMagick(因为它现在有效),但通常关于他的行为,因为我以某种方式看到过这种情况也会发生在其他场合.

解决方法

两种方法之间至少存在两种​​可能的差异原因:

> zypper负责依赖.因此,如果ImageMagick依赖于您没有的动态链接库,它将检索它,以便ImageMagick可以提供与该库相关的功能.在这种情况下,您自己编译的可执行文件现在应该可以使用ImageMagick及其依赖项.> zypper(AFAIK)不编译包,它只安装一个预编译的二进制文件.只有在编译时才需要能够编译特定功能的依赖项,通常是库的头部(-dev或-devel包).如果您没有它们,则可以省略configure以使用或多或少的详细程度启用编译功能.要安装它们,正确的命令似乎是:#zypper in -d imagemagick

原文地址:https://www.jb51.cc/linux/396623.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐