このスレッドは未解決です(解決したらこちらで解決済にしてください)
<<戻る

CENT OS 6.5でのyacc及びlexの環境構築について このメッセージに返信する
日時: 2014/08/13(Wed) 22:20
名前: 困っています
URL:
はじめましてUNIX始めたての者です
VMWareを使い,その中にCENT OS6.5をインストールし
その後に下記サイトを参考にymuインストールを行いBisonとFlex,gcc環境を入れました

http://matome.naver.jp/odai/2134964261323629801

bisonとflexをインストールした結果,yaccとlexがファイルとして存在するのは確認でき
適当な.lファイルと.yファイルを生成した後にコマンド入力でエラーも無く
lex.yy.cとy.tab.cを作ることが出来ました

そして最後にコンパイルするためにコマンドとして

gcc y.tab.c -ly -lfl -o ファイル名

を入力したところ

/usr/bin/ld: cannot find -ly
collect2: ld returned 1 exit status

というエラーが出ました.またライブラリ指定の順を逆にしても

/usr/bin/ld: cannot find -lfl
collect2: ld returned 1 exit status

というエラーが出ます。下記2サイトを参考にすると

http://d.hatena.ne.jp/tgk/20080318/1206015097

http://archive.linux.or.jp/JF/JFdocs/LFS-BOOK/chapter06/bison.html

flexインストールでライブラリ libfl.a が
bisonインストールでライブラリ liby.a ができるはずでライブラリ指定はあっていると思うのですが
見つからないという状況になっています

そこでライブラリがあるのかファイル検索したところ上記のような2ファイルは存在しませんでした
そこでドコを直せばいいのか、あるいはどういう手順でインストールすれば滞り無く環境を構築できるのか諸先輩方の意見を聞きたくて質問させて頂きました
記事編集 編集
Re: CENT OS 6.5でのyacc及びlexの環境構築について このメッセージに返信する
日時: 2014/08/14(Thu) 03:19
名前: 困っています
URL:
自己解決しましたので
問題点と解消法を下に記します

・そもそもbison,flexのyumインストールがうまく行っていませんでした
 その原因はroot(管理者)でログインしないでyumインストールを行ったからでした
 rootで端末からインストールを行ったところbisonとlexがexecutable形式で
 ディレクトリ /usr/bin に存在するのを確認しました
 yaccとlexが出来上がると思っていましたがbison(yaccの上位版)とlexができるようです

・ライブラリに関してですがしっかりとflexに対応する libfl.aが出来ていました
 ですがliby.aに関しては確認できませんでした。が、問題は今のところ起きていません

・コンパイル方法に関しては下記サイトの通りに行いうまくいきました

 http://hp.vector.co.jp/authors/VA022047/linux/bison.html


また何か躓くことや分かった事があれば書き込みにきますので
見ていただいている方にご迷惑をおかけしますがよろしくお願いします
記事編集 編集
Re: CENT OS 6.5でのyacc及びlexの環境構築について このメッセージに返信する
日時: 2014/08/14(Thu) 07:10
名前: stranger
URL: http://ja.528p.com/
yum で探してみる

$ yum provides */liby.a

bison-devel-2.4.1-5.el6.i686 : -ly library for development using Bison-generated
: parsers
Repo : base
Matched from:
Filename : /usr/lib/liby.a
記事編集 編集
件名※必須
名前※必須
URL
任意のパスワード (投稿後のコメント修正・削除時に使用)
画像認証※必須 投稿キー(画像で表示されている数字を入力)
コメント※必須

※質問を投稿後に自己解決された場合は、原因と行った対処を具体的に書き込み下さるよう、よろしくお願いします。

- WEB PATIO -