Doxygen을 설치하기에 앞서 한가지 확이하고 넘어가야할 것이 있습니다. Doxygen 사이트를 방문하시면 아시겠습니다만, 최신 버전은  1.5.8입니다. 그러나 저는 1.5.7을 가지고 글을 작성했습니다. 왜냐하면 어떤 이유에서인지 제 PC에서는 1.5.8이 제대로 설치가 안 됩니다. 제 시스템이 Microsoft Windows XP sp3인데, 다른 분은 별 문제 없이 사용하시는 것 같은데, 제 컴퓨터에는 Doxygen의 아아콘부터 설치가 안 됩니다.

 

주의 사항 본 강좌 글에는 Doxygen설치 파일을 첨부하지 않았습니다. 이유는 Doxygen 사이트에서 공식적으로 이전 버전을 공개하지 않고 있더군요. 이런 사정으로 저도 웹 검색을 통해 구했는데, Doxygen 사이트에서 구한 것이 아니라 올리지 못했습니다. 필요하신 분은 직접 웹을 통해 구하시기 바랍니다.

한글 문제가 없는 1.5.0

그래서 하는 수 없이 하위 버전을 설치하게 되었는데, 또 문제가 발생했습니다. 바로 한글 문제입니다. 아래 그림을 보시면 생성된 문서의 모든 한글이 모두 깨진 것을 보실 수 있습니다.

 

 

결론적으로 말씀드리면 Doxygen 1.5.0을 사용하시면 툴 버튼까지 한글이 제대로 출력됩니다.

 

 

Doxygen 1.5.0에서 한글 문서를 만들기 위해서는 Expert에서 출력 언어를 “Korean”으로 선택해 주시면 됩니다.

Doxygen 1.5.7 한글 문제를 피해서 사용

그런데 Doxygen 1.5.0은 아무래도 버전이 낮아 불안하지요. 설치가 안되 1.5.8을 사용하지는 못해도 1.5.7을 사용하는 것이 혹시 모를 새로운 Doxygen 문법 사용 문제라든지, 여하튼 버전이 낮아 발생하는 문제가 적지 않을까 싶어 선택했습니다만, 문제는 한글이 출력되지 않는다는 것이죠.

 

그러나 뜻이 있다면 길이 있다고, 1.5.7의 한글 문제를 피할 수 있는 방법을   “Romance of Programmer” 블로그에 올라와 있어서 감사하게도 지금 잘 사용하고 있습니다.

이전 강좌 글에 올렸던 이미지도 모두 Doxygen 1.5.7을 이용한 것입니다.

 

 

딱 한가지. 왼쪽에 보이시는 탐색 트리는 “Romance of Programmer” 블로그 글에 소개된 방법을 사용해도 한글이 깨집니다. 이 문제 외에는 다른 큰 문제가 없었습니다.

Doxygen을 설치하기 전에 Graphviz 설치

Doxygen 버전 중 어떤 것을 사용할지 결정하셨습니까? 그렇다면 강좌의 서두에서도 말씀드렸듯이 원하시는 버전의 Doxygen을 구하십시오. 그리고 설치하시면 되는데, Doxygen을 설치하기 전에 “Graphviz - Graph Visualization Software”의 graphviz-2.22.2.msi을 먼저 설치하십시오. 이 “graphviz”를 이용하시면 Doxygen이 글씨로만 문서를 작성하는 것이 아니라 아래의 그림에서 처럼 관계된 내용을 그림을 곁들여 주어, 한결 보기 좋고 문서의 가치를 높여 줍니다.

 

 

graphviz”를 설치하실 때 주의하실 것은 사용 대상을 선택하는 질문에서 반드시 "Everyone"을 선택하십시오. 저 같은 경우 “Just me”를 선택하면 제대로 설치가 안 되더라구요. 왤까? 모르겠습니다. ^^;

 

 

Doxgen 설치 방법

후~ 드디어 Doxygen을 설치할 차례이군요. 적당한 폴더에 설치를 합니다. 끝. ^^

Doxygen 사용 방법

Doxygen을 알고부터 저의 프로젝트 디렉토리 구성이 바뀌었습니다. 예전에는 프로젝트 디렉토리 바로 밑에 프로그램 소스 파일을 바로 작성했는데, 지금을 “source” 디렉토리를 만들어 놓고 모든 프로그램 소스를 이 디렉토리 안에 모아 작성합니다. 그리고 “Doxygen” 디렉토리를 만들어서 모든 Doxygen 작업을 이 디렉토리에서 모두 합니다. 즉, 아래와 같은 구성이죠.

 

 

Doxygen을 이용하여 문서를 작성하기 위해서는 소스파일만 있어서는 안 됩니다. Doxygen이 가공할 수 있는 데이터를 소스의 주석에 작성해 주어야 하는데, 이 내용을 다음 시간에 말씀드리기로 하고, Doxygen을 위한 주석을 담은 소스를 본 강좌에 첨부하겠습니다. 그러므로 우선 첨부된 파일을 가지고 아래와 같이 따라해 보십시오.

> Wizard 버튼

Doxygen을 실행합니다. 제일 처음 “Wizard...”을 클릭합니다.

 

  1. doxywizard 대화상자에서 “Project”탭입니다.


    순서에 따라 적당한 값을 지정해 주시면 됩니다.
    1. Project name
      프로젝트 이름을 넣어 주십시오.
    2. Project verion or id
      프로젝트 버전이나 다른 프로젝트와 구별할 수 있는 식별 번호를 입력합니다. 정해진 형식은 없습니다. 자유롭게 입력하십시오.
    3. Source code directory
      소스 파일이 있는 디렉토리를 지정해 줍니다.
    4. Scan recursively
      소스 파일이 소스 디렉토리 안에 또 다른 디렉토리 안에 작성되어 있다면, 모든 하위 디렉토리까지 뒤져가면서 문서를 작성할지의 여부를 지정합니다.
    5. Destinatione diectory
      Doxygen이 문서를 어디에 생성할지를 정해 주는데, 자동으로 “html”디렉토리를 생성하므로 Doxygen을 위한 디렉토리를 지정해 주면 됩니다.

  2. 다음은 Wizard 페이지에서“Mode”탭입니다. 저 같은 경우 기본 설정 값에서 아래의 값이 지정하여 사용합니다.
    1. Include cross-refeenced source code in the output
      이 옵션을 체크하면 각 함수마다 사용한 함수 코드로 바로 Jump할 수 있는 링크를 생성해 줍니다. 즉, 이 옵션을 끄고 문서를 만들면 아래와 값이 됩니다.



      그러나 옵션을 체크하고 문서를 생성하면 호출된 함수로 이동할 수 있는 링크가 생성됩니다.



      그래서 이 링크를 클릭하면 해당 함수의 소스 코드로 Jump합니다.



      괜찮죠? ^^
  3. 다음은 Wizard 페이지에서“Output”탭입니다. 어떤 파일로 만들지를 선택하는 항목인데, 저는 HTML 형식만 체크했습니다. 또한 문서 왼쪽에 탐색 트리가 있는 것이 편하므로 “with frames and a navigation tree”를 체크했습니다.



  4. 다음은 “Diagrams”탭입니다. Doxygen에서 소스간의 관계를 그래프로 출력해 주는 기능이 있는데, 이를 Dot Tool 이라고 하더군요. 당연히 이 관계 그래프가 출력되는 것이 좋으므로 모든 옵션을 체크했습니다.


    이제 [OK] 버튼을 클릭하여 작업을 완료합니다.

> Expert... 버튼

Doxygen 에서 [Expert...] 버튼을 클릭합니다.

 


 

[Wizard]버튼보다 더 많은 탭들이 출력되는데, 저는 아래와 같이 옵션을 선택하여 사용합니다.

  1. “Project” 탭입니다.


    1. DOXYFILE_ENCODING
      한글 문제를 피하기 위해 “EUC-KR”로 변경합니다.
    2. OUTPUT_LANGUAGE
      탐색 트리에서 한글이 깨지는 것을 피하기 위해 “English”를 선택합니다.
  2. “Input” 탭입니다.
    1. INPUT_ENCODING
      한글이 깨지는 것을 막기 위해 “EUC-KR”로 변경합니다.
  3. “Source Browser” 탭입니다.

    1. 함수 설명에서 함수 코드가 들어 가도록 “INLINE_SOURCES”를 체크합니다.

> [Save]와 [Select] 버튼

[Save] 버튼을 이용하여 지금까지 변경했던 옵션 내용을 파일로 저장합니다. 또한 [Select]버튼을 이용하여 Doxygen이 작업하는데 사용하는 디렉토리를 선택해 주셔야 하는데, c:\temp 같은 임시 디렉토리를 선택해 주면 됩니다.

 

>[Start] 버튼으로 문서 만들기

이제 모든 설정 작업이 완료되었습니다. [Start]버튼으로 문서를 생성하면됩니다. 큰 문제가 없다면 아래와 같이 “Destinatione diectory”로 지정한 디렉토리 밑에 “html” 디렉토리가 생성되고 그 안에 html 파일이 생성됩니다.

 

 

생성된 파일을 열어 보시면 Doxygen이 고생한 결과물을 보실 수 있습니다.