我將把用於unix的C項目移植到windows中。到目前爲止,我可以編譯它,但不能編譯。我得到的問題是,一些這是在頭文件中聲明該功能在files.so我收到以下錯誤YACC定義:yacc和野牛在視覺工作室
error LNK2001: unresolved external symbol function_name
我在加入.Y和.L文件該project.I的源目錄覺得我不能端口YACC文件到Windows版本或我做的事情stupid.I搜索它的網絡,但不能得到正確的教程it.Could請你讓我知道
- 如何在項目中添加.y或.l文件。
- 我將如何使這些文件兼容到Windows?
- 如何將它們與其他目標文件鏈接。
編輯
我試圖與該.l
文件變更爲使用flex.exe
。繼.yy.c
文件是它
c:\> flex.exe name.l
假設的命令,無論是flex.exe和名稱。 l在C;>
。我將這些文件.l .y(previously present for parsing in unix system) .yy.c(corrsonding yacc file for windows)
加載到先前存在的項目的解決方案中。有一次,我編譯,我得到以下
Can't read the header file parserheaderfile.h
這是頭文件需要由在UNIX系統 的bison
產生。所以我認爲我不能使bison
與windows
兼容。所以請問他我該如何解決這個問題?
在此先感謝。
這是每次使用f/lex和/或bison/yacc啓動新項目時必須設置的東西嗎?或者你可以設置一次,VS會永遠記住這些設置嗎?另外,有沒有推薦使用這些庫的IDE?在使用gcc進行編譯之前,必須運行f/lex和/或bison/yacc時,從命令行執行操作有時會很煩人。 – velocirabbit
@velocirabbit這是一個項目特定的設置。所以你需要爲每個.l或者.y文件配置它。 – Rudi