2012-07-05 85 views
1

我試圖使用flex並已安裝在c:\ gnuwin32 \ bin已添加到PATH以及c:\ dev-cpp \ bin。柔性路徑添加不工作

調用gcc的工作沒有問題,但調用flex不要,除非我在c:\ gnuwin32 \ bin目錄下,這意味着要求gcc用lex.yy.c編譯失敗,因爲它找不到一些外部函數,如yywrap()。

以下是我的路徑當前是最後兩項或有問題的路徑。 最後一個路徑項是否需要以分號結尾?我不知所措,爲什麼它不工作,不然..

echo path

回答

1

您的問題是不相關的路徑的級聯。

GCC不找到在鏈接時柔性運行時庫必須添加-l選項來指定其位置,並添加libfl.a

喜歡的東西

gcc -o target *.o -L <path> -lfl 

您還可以禁用通過以下柔性選項yywrap功能

%option noyywrap 

FAQ entry in the Flex manual

+0

這可能會解決編譯,但不解釋爲什麼我不能運行柔性沒有在flex bin – Toby 2012-07-05 12:30:41

+0

,如果你鍵入flex.exe的完整路徑它的工作。如果是的話,你也要檢查PATH變量中的tipo。 – VGE 2012-07-05 12:43:20

+0

編輯有問題的圖片顯示,據我所知,沒有錯別字 – Toby 2012-07-05 12:57:01