12

私のMac上のGNUBisonのバージョンは2.3ですが、Bison2.5がずっと前にリリースされたことを知っています。Flex&Bisonという本はバージョン2.5を使用しています。

自分で2.5にアップグレードする必要がありますか?必要ですか?

2.3と2.5の違いは何ですか?

4

7 に答える 7

19

MacOSX 10.9.5 でも同じ問題が発生しました。

実行後:

brew install bison

これを私のbashプロファイルに追加しました:

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

(あなたがこれを読む頃には、あなたのバージョンは 3.0.4 とは異なっているかもしれません) そして、ターミナルを再起動した後、Bison の新しいバージョンを取得しました。bison -V

于 2015-09-24T05:30:35.877 に答える
18

使用している場合zsh:

$ brew unlink bison
$ echo 'export PATH="/usr/local/opt/bison/bin:$PATH"' >> ~/.zshrc
$ export LDFLAGS="-L/usr/local/opt/bison/lib"
$ source ~/.zshrc
$ bison -V
bison (GNU Bison) 3.4.1
Written by Robert Corbett and Richard Stallman.

Copyright (C) 2019 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.
于 2019-06-09T08:46:18.590 に答える
12

自作で新しいバージョンをインストールできます:

$ 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と、新しくインストールされた 3.0.4 ではなく、2.3 が出力されます。これを強制するには、これを実行できます。

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.
于 2015-06-15T11:58:16.183 に答える
7

Brew を使用する場合:

brew tap homebrew/dupes && brew install bison

MacPorts を使用する場合:

sudo port install bison

Fink を使用している場合は、Apple と同じように 2.3 のままなので、自分でパッケージを編集する必要があります。

Unix ソフトウェアのインストール方法を知っている場合は、ダウンロードして untar し、通常どおり構成/作成/インストールしてください。

上記のすべてがギリシャ語である場合は、Linkhttp://macports.orgを見て、どちらが親しみやすいかを判断してください。

于 2012-05-30T01:06:54.913 に答える
4

そこで、Mojave と Catalina での bison ビルドの問題を解決する方法を見つけました。

これが私がしたことです:

$ brew install bison
$ cp /usr/local/opt/bison/bin/bison /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/bison

--

管理者権限は必要ありませんでした。cp コマンドは Xcode アプリの bison バイナリを、homebrew によってインストールされた最新のもので上書きします。

今、私はこれを行うことができます:

    $ bison -V
bison (GNU Bison) 3.7.1

Mojave を実行している複数の macOS システムで wine をビルドする際に非常に多くの問題を抱えています。ほとんどの場合、私が聞いたことのないライブラリに対するこの奇妙な必要性が原因ですが、この修正により機能するようになりました。

于 2020-08-10T04:36:37.207 に答える
0

bison がインストールされているため、osx のデフォルト バージョンは 2.3 です。したがって、次のようにする必要があります。

  1. より高いバージョンの os bison をインストールする

    Brew を使用している場合は、このコマンドを使用してみてください。brew install bison を使用すると、bison 3.0.2 がインストールされます。バイナリ パッケージは、私のコンピューターの /usr/local/Cellar/bison/3.0.4/bin/ の下にあります。

    または、公式ウェブサイトhttp://www.gnu.org/software/bison/の指示に従って、ソース コードから bison をインストールすることもできます。

  2. 古いものを置き換えます(sudoまたはroot権限が必要です)

    $ which bison --- インストールされたパスを見つけます。私のコンピューターでは /usr/bin/bison です

    $ cd /usr/bin

    $ 須藤 mv バイソン bison.2.3

    $ sudo cp /usr/local/Cellar/bison/3.0.4/bin/bison バイソン

その後、この問題なくthriftをインストールできます.

于 2016-01-26T16:19:26.123 に答える
0

Brewを使用してパッケージをインストールしました。ただし、これはバイソンの位置を更新しません。2.5 ではなく、まだ bison 2.3 が表示されます。

すると、新生バイソンの位置が違うことがわかりました。

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.
于 2015-02-02T18:28:49.567 に答える