3

Windows でプロジェクトをコンパイルしようとしていますが、flex/bison を使用しています。

MinGWをインストールした後、flexファイルとbisonファイルのコンパイルはうまくいきましたが、ビルドの最終ステップに到達すると、次のようになります。

g++ -o hexciting CommandParser.tab.o CommandParser.yy.o Command.o -lfl

ライブラリが見つからないと表示されます。

Googleでしばらくして、フラグを-llibfl.aに変更しようとしましたが、このライブラリも見つかりませんでした。

このライブラリのコピーを入手したり、自分でビルドしたりするにはどうすればよいですか?

4

3 に答える 3

4

http://gnuwin32.sourceforge.net/packages/flex.htmを試しましたか?

于 2009-07-07T22:57:05.873 に答える
2

ライブラリ「l」をリンクする必要がないように、cygwin 経由で flex を使用し、Visual Studio でコンパイルします。

int yywrap()

この関数は、現在のファイルが終了したときに呼び出されます。yywrap が新しいファイルがロードされた場合は 0 を返し、それ以上ファイルが存在しない場合は 1 を返します。

あなたの別の質問については、yywrap をハードコーディングして 1 を返します。これは、標準の詩ファイルから入力を取得しているためです。

于 2009-07-08T09:36:54.700 に答える