更改brew中软件包安装的编译配置


8

使用brew install时如何更改编译器配置?我想用brew用+ farsi编译vim。但是似乎+ farsi在brew中不可用:

$ brew install +farsi vim
Error: No available formula for +farsi

我也尝试了以下命令:

$ brew install vim --+farsi
==> Downloading http://ftp.debian.org/debian/pool/main/v/vim/vim_7.4.052.orig.tar.gz
Already downloaded: /Library/Caches/Homebrew/vim-7.4.052.tar.gz
==> Patching
patching file src/auto/configure
patching file src/osdef.sh
patching file src/os_mac.h
==> ./configure --prefix=/usr/local --mandir=/usr/local/Cellar/vim/7.4.052/share/man --enable-multibyte --with-tlib=ncur
==> make
==> make install prefix=/usr/local/Cellar/vim/7.4.052 STRIP=/usr/bin/true

但是+ farsi仍然没有用vim编译:

[ben@thebeast ~/vim/vim74]$ vim --version
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Aug 24 2013 18:58:47)
Compiled by root@apple.com
Normal version without GUI.  Features included (+) or not (-):
-farsi

实际上,唯一可用的选项是:

$ brew options vim
--disable-nls
    Build vim without National Language Support (translated messages, keymaps)
--override-system-vi
    Override system vi
--with-client-server
    Enable client/server mode
--with-lua
    Build vim with lua support
--with-mzscheme
    Build vim with mzscheme support
--with-perl
    Build vim with perl support
--with-python3
    Build vim with python3 support
--with-tcl
    Build vim with tcl support
--without-python
    Build vim without python support
--without-ruby
    Build vim without ruby support
--HEAD
    install HEAD version

这是否意味着brew中仅配置子集可用?

Answers:


5
  1. brew install vim安装vim 7.4.052
  2. vim --version报告版本7.3

从上面的观察可以明显看出,这是两个不同的病毒。通过执行,vim --version您可以调用作为OS X一部分提供的vim(您可以通过进行检查which vim,这将报告/ usr / bin / vim,而brew开发的程序通常位于/ usr / local目录下。

要编辑vim公式,您只需执行brew edit vim,但是并不需要为了获得所需的波斯语支持​​而执行此操作。从Vim Feature Table中可以看到,任何使用--with-features=big或编译的内部版本都包含波斯语支持。当brew版本使用编译时--with-features=huge,它们已经包含波斯语支持​​。

/ usr / local / bin / vim --version
VIM-Vi IMproved 7.4(2013 Aug 10,2014年1月1日编译14:31:50)
MacOS X(unix)版本
包括的修补程序:1-52
由Homebrew编译
而没有GUI的巨大版本。包含(+)或不包含(-)的功能:

+ acl + farsi + mouse_netterm +语法

要使用brew内置的vim版本,您可能想为其加上别名alias vim='/usr/local/bin/vim',或尝试其他任何选项


vim返回“ / usr / local / bin / vim”。这是brew安装的vim,而不是OS X安装的vim。但是,当我执行“ vim --version”时,仍然得到-farsi。似乎“ brew install”不收听编辑文件,也不用巨大的选项编译它。知道我该如何调试吗?
bman 2014年

@Dane /usr/local/bin/vim --version还显示-farsi吗?
陶先生

3

您可以编辑vim的Brew公式,该公式可能位于/usr/local/Library/Formula和名为的文件中vim.rb。您可以编辑此文件,并在执行编译过程的行中添加所需的选项,例如system "make"

system "./configure", "--prefix=#{HOMEBREW_PREFIX}",
                      "--mandir=#{man}",
                      "--enable-multibyte",
                      "--with-tlib=ncurses",
                      "--enable-cscope",
                      "--with-features=huge",
                      "--with-compiledby=Homebrew",
                      *opts

我不认为它只是实现了某些选项,brew根据应用程序的编译过程和makefile动态创建了编译选项。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.