회사에서 소스분석할 일이 많아 회사에서 이상없이(?) 사용할 수 있는 소스분석툴을 찾고 있었습니다. 오래전에 설명한 Source-Navigator ( http://nahanmil.egloos.com/64509 ) 좋은 툴이긴 하지만 비주얼 한 맛이 떨어졌습니다.. 그래서 오랜 검색 끝에 Doxygen 으로 소스분석하는 방법을 알았습니다. 이미 내 블로그에서 doxygen doxygen 은 문서화 툴로( http://nahanmil.egloos.com/42481 , http://nahanmil.egloos.com/3165062 ) 소개한 적 있었습니다.
그런데 오늘 Doxygen의 조금 다른 이용방법을 알게되었습니다.
이런 그림도 그려주고
이런 그림도 그려주면서 동시에 문서도 만들어 줍니다.
(이 그림들은 제가 요즘에 분석하고 있는 HTML Parser 프로그램을 적용해 본 것입니다. )
Doxygen 주석이 안 달려 있더라도 옵션을 달리 설정해 주면 Doxygen 에서 소스 분석을 편하게 만들어 주고, 옵션을 더 설정하면 Graphviz 를 이용해서 그림까지 만들어 냅니다.
=================================================
이제 본격적으로 프로그램을 설치 및 분석하기 좋은 문서가 생성되도록 하겠습니다. 이 전과정을 설명하고 있는 한글로 된 문서가 없길래 적어봅니다. 물론, 틀릴 수도 있습니다. 어쩌면 틀리는 것 투성이겠죠..
우선 프로그램 부터 설치해야겠죠. Doxygen 은 http://www.stack.nl/~dimitri/doxygen/ (GNU General Public License 입니다.) 에서 프로그램을 받을 수 있습니다. Graphviz 은 http://www.graphviz.org/ (Common Public License 입니다. 이클립스도 이 라이센스내요.. ) 에서 프로그램을 받을 수 있습니다. 저의 경우 doxygen-1.5.5-setup.exe doxygen-1.5.5-setup.exe 과 graphviz-2.16.1.static.exe 파일을 다운 받았습니다.
프로그램 설치는 적당히 하면 됩니다.
여기에서는 Graphviz 프로그램을 열어서 사용하는 것은 없습니다. doxygen 이 이 프로그램 여기 있으니 니가 알아서 사용해라라고 알려주기만 하면 됩니다.
그래서 doxygen 설정만 하면 됩니다. Doxywizard 프로그램을 실행합니다.
Step 1의 "Wizard.." 버튼을 클릭합니다. Project Tab에서 Proeject Name 과 버전을 적당히 적어줍니다. 여기서 중요한 것은 source code directory 입니다. 여기에 select 버튼을 이용해 분석하고 싶은 소스의 디렉토리를 설정합니다. 그 설정한 디렉토리의
하위디렉토리도 포함하고 싶다면 바로 밑의 scan recursively를 체크해 둡니다. 아래의 Destination Directory는 생성된 문서들이 위치할 디렉토리를 입력하면 됩니다.
Mode 탭에서는 밑의 언어부분은 doxygen이 알아서 설정하기 때문에 그다지 만질일이 없다고 하니 자기가 분석하려는 프로그래밍 언어와 다를 때만 만지도록 하자.. 그리고 여기서는 위에 있는 All entities 를 꼭 선택하도록 하자. 우리가 만들어져 있는 프로그램을 분석하기 경우이기 때문에 이 버튼을 꼭 선택해야 한다. 그 밑에 있는 체크 박스는 자세히 모르겠다.... 패스...
Output 탭은 알아서 생성하고 싶은 파일을 선택한다. Html 파일은 꼭 이용하자. LaTex는 프로그램이 있어야 이용가능..
마지막 탭은 Use dot ..... 이 부분을 체크하자... 아래 체크 박스는 입맛대로 설정하면 된다...
이제 이 대화상자를 OK버튼을 눌러서 빠져나온다..
메인 대화상자에서 Expert 버튼을 클릭한다.
첫 번째 탭에서 Output Language 는 Korean을 꼭 설정하면 나중에 만들어진 문서에 한글로 메뉴와 설명이 붙는다.
나머지는 입맛대로 설정...
가장 중요한 부분은 dot 탭을 설정하는 부분이다. 이 dot 탭은 거의 마지막 탭이다. 잘 찾기 바란다..
이중 Dot Path 설정이 중요하다. 이 부분을 설정해 두어야 Doxygen이 Graphviz 안의 dot 프로그램을 찾아가 알아서 그림까지 만들어 준다. Graphviz 를 설치한 디렉토리 안의 /bin 폴더로 잡아 준다.
나의 경우에는 C:/tools/Graphviz2.16/bin 이다.
나머지 check box는 입맛대로.. 개인적으로 난 다 설정했다... 뭐가 뭔지 모르므로.... 이렇게 하면 분명 문서를 생성하는데 시간이 걸리긴 할 것 같다.
Step2로 넘어가 이 설정한 것을 저장한다. 나중에 Step 1 의 Load를 통해 이 설정파일을 다시 이용할 수 있다.
Step3의 work directory는 뭘까??? 내 추측으로는 이 Doxygen wizard가 실제 작동하는게 아니라 안의 doxygen.exe 파일이 실제로 동작하는데 이 프로그램은 어니 디렉토리에서 실행할 것인가 그 위치를 잡는 것 같다. 그다지 안 중요할 것 같다.
나의 경우 소스 디렉토리의 바로 위로 잡았다. C:/source 로 잡았다..
마지막으로 Start 버튼 클릭...
Output 디렉토리로 설정한 곳에 Html 폴더가 생겼고 그 안에 여러 파일들이 설정되었습니다. index.html 파일을 열어 보면서 살펴보면 됩니다.
혹시 설정이 잘못되어 안 나오는 분들을 위해 제 설정파일을 올립니다. 당연히 개인마다 설정이 다를 수 있는 것을 감안하고 보세요...
Doxyfile
그런데 오늘 Doxygen의 조금 다른 이용방법을 알게되었습니다.
(이 그림들은 제가 요즘에 분석하고 있는 HTML Parser 프로그램을 적용해 본 것입니다. )
Doxygen 주석이 안 달려 있더라도 옵션을 달리 설정해 주면 Doxygen 에서 소스 분석을 편하게 만들어 주고, 옵션을 더 설정하면 Graphviz 를 이용해서 그림까지 만들어 냅니다.
=================================================
이제 본격적으로 프로그램을 설치 및 분석하기 좋은 문서가 생성되도록 하겠습니다. 이 전과정을 설명하고 있는 한글로 된 문서가 없길래 적어봅니다. 물론, 틀릴 수도 있습니다. 어쩌면 틀리는 것 투성이겠죠..
우선 프로그램 부터 설치해야겠죠. Doxygen 은 http://www.stack.nl/~dimitri/doxygen/ (GNU General Public License 입니다.) 에서 프로그램을 받을 수 있습니다. Graphviz 은 http://www.graphviz.org/ (Common Public License 입니다. 이클립스도 이 라이센스내요.. ) 에서 프로그램을 받을 수 있습니다. 저의 경우 doxygen-1.5.5-setup.exe doxygen-1.5.5-setup.exe 과 graphviz-2.16.1.static.exe 파일을 다운 받았습니다.
프로그램 설치는 적당히 하면 됩니다.
여기에서는 Graphviz 프로그램을 열어서 사용하는 것은 없습니다. doxygen 이 이 프로그램 여기 있으니 니가 알아서 사용해라라고 알려주기만 하면 됩니다.
그래서 doxygen 설정만 하면 됩니다. Doxywizard 프로그램을 실행합니다.
Step 1의 "Wizard.." 버튼을 클릭합니다. Project Tab에서 Proeject Name 과 버전을 적당히 적어줍니다. 여기서 중요한 것은 source code directory 입니다. 여기에 select 버튼을 이용해 분석하고 싶은 소스의 디렉토리를 설정합니다. 그 설정한 디렉토리의
하위디렉토리도 포함하고 싶다면 바로 밑의 scan recursively를 체크해 둡니다. 아래의 Destination Directory는 생성된 문서들이 위치할 디렉토리를 입력하면 됩니다.
Mode 탭에서는 밑의 언어부분은 doxygen이 알아서 설정하기 때문에 그다지 만질일이 없다고 하니 자기가 분석하려는 프로그래밍 언어와 다를 때만 만지도록 하자.. 그리고 여기서는 위에 있는 All entities 를 꼭 선택하도록 하자. 우리가 만들어져 있는 프로그램을 분석하기 경우이기 때문에 이 버튼을 꼭 선택해야 한다. 그 밑에 있는 체크 박스는 자세히 모르겠다.... 패스...
Output 탭은 알아서 생성하고 싶은 파일을 선택한다. Html 파일은 꼭 이용하자. LaTex는 프로그램이 있어야 이용가능..
마지막 탭은 Use dot ..... 이 부분을 체크하자... 아래 체크 박스는 입맛대로 설정하면 된다...
이제 이 대화상자를 OK버튼을 눌러서 빠져나온다..
메인 대화상자에서 Expert 버튼을 클릭한다.
첫 번째 탭에서 Output Language 는 Korean을 꼭 설정하면 나중에 만들어진 문서에 한글로 메뉴와 설명이 붙는다.
나머지는 입맛대로 설정...
가장 중요한 부분은 dot 탭을 설정하는 부분이다. 이 dot 탭은 거의 마지막 탭이다. 잘 찾기 바란다..
이중 Dot Path 설정이 중요하다. 이 부분을 설정해 두어야 Doxygen이 Graphviz 안의 dot 프로그램을 찾아가 알아서 그림까지 만들어 준다. Graphviz 를 설치한 디렉토리 안의 /bin 폴더로 잡아 준다.
나의 경우에는 C:/tools/Graphviz2.16/bin 이다.
나머지 check box는 입맛대로.. 개인적으로 난 다 설정했다... 뭐가 뭔지 모르므로.... 이렇게 하면 분명 문서를 생성하는데 시간이 걸리긴 할 것 같다.
Step2로 넘어가 이 설정한 것을 저장한다. 나중에 Step 1 의 Load를 통해 이 설정파일을 다시 이용할 수 있다.
Step3의 work directory는 뭘까??? 내 추측으로는 이 Doxygen wizard가 실제 작동하는게 아니라 안의 doxygen.exe 파일이 실제로 동작하는데 이 프로그램은 어니 디렉토리에서 실행할 것인가 그 위치를 잡는 것 같다. 그다지 안 중요할 것 같다.
나의 경우 소스 디렉토리의 바로 위로 잡았다. C:/source 로 잡았다..
마지막으로 Start 버튼 클릭...
Output 디렉토리로 설정한 곳에 Html 폴더가 생겼고 그 안에 여러 파일들이 설정되었습니다. index.html 파일을 열어 보면서 살펴보면 됩니다.
혹시 설정이 잘못되어 안 나오는 분들을 위해 제 설정파일을 올립니다. 당연히 개인마다 설정이 다를 수 있는 것을 감안하고 보세요...
Doxyfile