2012-05-28 58 views
3

我開始在我的Mac中使用GNU bison,我使用--version來查找,在Mac上的野牛是v2.3,但是很久以前,野牛得到了2.5升級。該書'flex & bison'使用2.5作爲工具。 如何升級2.5自己,它是nessesary? 或者2.3和2.5有什麼不同?爲什麼不能在MacOSX 10.7.3上將gnu bison升級到2.5?

+1

對於這些信息,您應該確實在尋找[GNU的Bison網頁](http://www.gnu.org/software/bison/)。 –

回答

8

如果您使用Brew,「brew tap homebrew/dupes & & brew install bison」。

如果您使用MacPorts「sudo port install bison」。

如果你使用Fink,它們仍然在2.3上,就像蘋果一樣,所以你必須自己編輯軟件包。

如果您知道如何安裝Unix軟件,請下載它,解壓縮,然後像往常一樣配置/製作/安裝。

如果以上所有信息都是希臘字母,請查看http://mxcl.github.com/homebrew/http://macports.org,然後決定哪一個看起來更友好。

+0

對於「2.3和2.5之間有什麼不同」部分,請參閱Michael Petrotta對主要問題的評論。 – abarnert

0

我使用了Brew並安裝了該軟件包。但是,這並不會更新野牛的位置。我仍然看到野牛2.3而不是2.5。

然後,我發現新的野牛的位置是不同的。

bash-3.2$ echo $PATH 
/opt/local/bin:/opt/local/sbin:/Users/taposh/anaconda/bin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/m4/bin/ 
bash-3.2$ PATH=/usr/local/bison/bin/:$PATH 
bash-3.2$ which bison 
/usr/local/bison/bin//bison 

bash-3.2$ bison --version 
bison (GNU Bison) 2.5 
Written by Robert Corbett and Richard Stallman. 
Copyright (C) 2011 Free Software Foundation, Inc. 
This is free software; see the source for copying conditions. There is NO 
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
8

你可以用自制安裝新版本:

$ brew install bison 

... 

This formula is keg-only, which means it was not symlinked into /usr/local. 

Mac OS X already provides this software and installing another version in 
parallel can cause all kinds of trouble. 

Some formulae require a newer version of bison. 

Generally there are no consequences of this for you. If you build your 
own software and it requires this formula, you'll need to add to your 
build variables: 

    LDFLAGS: -L/usr/local/opt/bison/lib 

==> Summary 
    /usr/local/Cellar/bison/3.0.4: 51 files, 2.2M, built in 74 seconds 

但是,如果你運行:bison -V,它仍然會輸出2.3,而不是新安裝3.0.4。要執行此操作,您可以運行此:

arganzhengs-MacBook-Pro:thrift argan$ brew unlink bison 
Unlinking /usr/local/Cellar/bison/3.0.4... 0 symlinks removed 
arganzhengs-MacBook-Pro:thrift argan$ brew link bison 
Warning: bison is keg-only and must be linked with --force 
Note that doing so can interfere with building software. 
arganzhengs-MacBook-Pro:thrift argan$ brew link bison --force 
Linking /usr/local/Cellar/bison/3.0.4... 9 symlinks created 
arganzhengs-MacBook-Pro:thrift argan$ bison -V 
bison (GNU Bison) 2.3 
Written by Robert Corbett and Richard Stallman. 

Copyright (C) 2006 Free Software Foundation, Inc. 
This is free software; see the source for copying conditions. There is NO 
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
arganzhengs-MacBook-Pro:thrift argan$ source ~/.bash_profile 
arganzhengs-MacBook-Pro:thrift argan$ bison -V 
bison (GNU Bison) 3.0.4 
Written by Robert Corbett and Richard Stallman. 
5

我有同樣的問題MacOSX 10.9.5。我說這對我的bash的個人資料

brew install bison 

後做

export PATH=/usr/local/Cellar/bison/3.0.4/bin:$PATH 

(你讀到這封信的時候,你的版本可能會從不同3.0.4) 並經過我重新啓動終端它拿起了新版本的野牛當我做bison -V

0

因爲野牛已經安裝,OSX上的默認版本是2.3。所以,我們應該做的事情如下:

  1. 安裝高版本的操作系統野牛

    如果使用釀造,嘗試使用此命令 - 釀造安裝野牛,它將安裝野牛3.0.2 。二進制包在我的電腦中位於/usr/local/Cellar/bison/3.0.4/bin/下。

    或者您可以通過源代碼安裝野牛,按照官方網站http://www.gnu.org/software/bison/的說明操作。

  2. 取代舊的(你需要須藤或root權限)

    $其中野牛---找到安裝路徑,在我的電腦是在/ usr/bin中/野牛

    $ CD的/ usr/bin中

    $ sudo的MV野牛bison.2.3

    $ sudo的CP /usr/local/Cellar/bison/3.0.4/bin/bison野牛

然後你可以安裝節儉沒有這個問題。