컴파일러 수업시간에 잠깐 스쳐지나갔던 flex와 bison… 과제라는 이름으로 다시 마주하게 될 줄은 몰랐다. 설치하는 법과 컴파일 하는 법도 몰라서 헤맸던 지난 날의 나를 돌이켜보며 이 문서를 작성한다. 미래의 나는 또 사용법을 잊을 것이기에… 사실 이렇게 굳이 사족을 다는 이유는 이 블로그 레이아웃은 처음 글이 길 수록 예쁘게 출력되기 때문이다. 오늘 친구의 졸업 전시회를 보고왔다. 나는 아직도 학부 수준에서 허덕이고 있는데 어느새 저 멀리 앞서나간 친구를 존경한다. 나도 좀 더 부지런히 살아야겠다고 다짐하며 글을 시작한다.

~Flex와 Bison 사용 방법~


Flex와 Bison이란


flex란 lex의 기능을 개선한 어휘분석기를 생성해주는 소프트웨어이다. flex를 이용하면 c로 구문 분석 코드를 만들 수 있다.
bison이란 yacc의 기능을 개선한 GNU 파서를 생성해주는 파서 생성기이다. LALR 방식으로 작성된 문법을 처리하고 해석해서 C 코드로 만들어 준다.


설치방법


1. 다운로드
2. 환경변수 설정

시스템 속성 -> 환경 변수 -> PATH PATH 변수에

C:\Dev-cpp\bin;C:\GnuWin32\bin

를 추가한다.

3. 설치 확인
4. 라이브러리 파일 복사

파일을 C:\Dev-cpp\lib 로 복사한다.


컴파일 하는 법


C:\경로> flex 야호야호.l  
C:\경로> bison -d 야호야호.y  
C:\경로> gcc lex.yy.c 야호야호.tab.c -o 야호야호  



참고자료