我正在尝试将 Flex 与 Visual C++ 一起使用。但是,生成的词法分析器(它是空的并且没有规则)在构建时会抛出这些错误:
configurationlexer.cpp(967): error C3861: 'read' identifier not found
configurationlexer.cpp(967): fatal error C1903: unable to recover from previous error(s); stopping compilation
源文件是:
%{
#include <string>
%}
%option yylineno
%%
%%
//Lexer End
我正在通过将此目标添加到我的 Visual Studio 项目中进行构建:
<Target Name="Flex" Inputs="$(MSBuildProjectDirectory)\ConfigurationLexer.l" Outputs="$(MSBuildProjectDirectory)\ConfigurationLexer.cpp;$(MSBuildProjectDirectory)\ConfigurationLexer.hpp">
<Exec Command="C:\Cygwin\bin\flex.exe --nounistd -f -o "$(MSBuildProjectDirectory)\ConfigurationLexer.cpp" "--header=$(MSBuildProjectDirectory)\ConfigurationLexer.hpp" "$(MSBuildProjectDirectory)\ConfigurationLexer.l"" />
</Target>
是否可以将 Flex 与 MSVC 一起使用?