Я пытаюсь связать различные лексеры Flex ++ в одном исполняемом файле.Тем не менее, я получаю ошибки компиляции в результате переопределения символов.Я пытался установить разные префиксы, но это было бесполезно: Вот мои варианты:
Lexer1:
%option c++
%option noyywrap
%option yyclass="SendmailScanner"
%option prefix="zz"
Lexer2:
%option c++
%option noyywrap
%option yyclass="SSHDFailureScanner"
%option prefix="xx"
Согласно инструкции,Я должен только сбросить переменную yyFlexLexer и изменить ее на zzFlexLexer (в исходном файле, который использует этот лексер) или xxFlexerLexer.К сожалению, я получил следующие ошибки:
/usr/include/FlexLexer.h:103: error: redefinition of ‘class zzFlexLexer’
/usr/include/FlexLexer.h:103: error: previous definition of ‘class zzFlexLexer’
Эта ошибка также появляется, даже если у меня только один Lexer ... Я не знаю, что делать.
Заранее спасибо,