Thay đổi cấu hình biên dịch cài đặt gói trong brew


8

Làm cách nào để thay đổi cấu hình trình biên dịch khi tôi sử dụng cài đặt brew? Tôi muốn biên dịch vim với + farsi bằng brew. Nhưng có vẻ như + farsi không có sẵn tùy chọn trong brew:

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

Tôi cũng đã thử lệnh này:

$ 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

Nhưng still + farsi không được biên dịch với 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

Trong thực tế, các tùy chọn duy nhất có sẵn là:

$ 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

Điều này có nghĩa là chỉ có tập hợp con cấu hình có sẵn trong bia?

Câu trả lời:


5
  1. brew install vimcài đặt vim 7.4.052
  2. vim --versionbáo cáo phiên bản 7.3

Từ quan sát trên, rõ ràng đây là hai ý tưởng khác nhau. Bằng cách thực thi, vim --versionbạn đang gọi vim được cung cấp như một phần của OS X (bạn có thể kiểm tra điều này bằng cách which vimbáo cáo / usr / bin / vim , trong khi các chương trình được xây dựng thường nằm trong thư mục / usr / local .

Để chỉnh sửa công thức vim bạn chỉ cần thực hiện brew edit vim, nhưng bạn không cần phải làm điều này chỉ để nhận được hỗ trợ farsi mong muốn của bạn. Như bạn có thể thấy từ Bảng tính năng Vim , hỗ trợ farsi được bao gồm với bất kỳ bản dựng nào được biên dịch với --with-features=bighoặc rất lớn. Khi các bản dựng bia được biên dịch cùng --with-features=huge, chúng đã chứa hỗ trợ farsi.

/ usr / local / bin / vim --version
VIM - Vi Improved 7.4 (2013 10 tháng 8, biên soạn 01 tháng một năm 2014 14:31:50)
hệ điều hành MacOS X (unix) phiên bản
bao gồm các bản vá lỗi: 1-52
Biên soạn bởi Homebrew
phiên bản khổng lồ mà không GUI . Các tính năng bao gồm (+) hay không (-):

+ acl + Farsi + mouse_netterm + cú pháp

Để sử dụng phiên bản pha chế của vim, bạn có thể muốn đặt bí danh cho nó alias vim='/usr/local/bin/vim'hoặc thử bất kỳ tùy chọn nào khác .


mà vim trả về "/ usr / local / bin / vim". Đây là vim được cài đặt bởi brew chứ không phải vim được cài đặt bởi OS X. Tuy nhiên, khi tôi thực hiện "vim --version", tôi nhận được -farsi. Có vẻ như "brew install" không nghe tệp chỉnh sửa và không biên dịch nó với tùy chọn lớn. Bất cứ ý tưởng làm thế nào tôi có thể gỡ lỗi này?
bman

@Dane /usr/local/bin/vim --versionCũng hiển thị -farsi ?
Ông Tao

3

Bạn có thể chỉnh sửa công thức của brew cho vim có thể có trong /usr/local/Library/Formulavà có tên trong tệp vim.rb. Bạn có thể chỉnh sửa tệp này và thêm các tùy chọn cần thiết vào các dòng nơi nó thực thi quy trình biên dịch, chẳng hạn như system "make"hoặc

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

Tôi không nghĩ rằng nó chỉ thực hiện một số tùy chọn, tự động tạo các tùy chọn biên dịch theo quy trình biên dịch và tệp thực hiện của ứng dụng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.