我最近开始使用自制软件,而且我对我在系统上酿造一些东西时会发生什么感到困惑,但它的酿造依赖关系只是keg-only,这意味着它们是在/usr/local
下链接的
例如,我是安装vips(图像处理库)。它的众多依赖之一是pixman。 Pixman仅作为keg安装,因为显然Mac OSX(在这种情况下是Snow Leopard)已随附(或其版本)。
这是否意味着vips将使用pixman的系统版本?如果是这样,是否存在与使用系统版本而不是依赖版本相关的潜在版本问题(假设它们不同)?
答案 0 :(得分:168)
对于“仅限keg”的软件,它意味着它安装在/usr/local/Cellar
中,但不链接到/usr/local/bin
,/usr/local/lib
等地方。这意味着依赖于它的其他软件必须使用特定指令进行编译,以使用/usr/local/Cellar
中的文件。当公式指定仅限keg的依赖项时,brew install
会自动完成。
指定仅限keg的依赖项的公式确保不使用等效的系统库。您的vips安装与/usr/local/Cellar/pixman/<version>
中特定版本的pixman相关联,因此它不受pixman的系统版本或您可能安装的任何其他Homebrew版pixman的影响。