ETC

Doxygen 설치!

IMyoungho 2018. 9. 24. 09:44

Doxygen을 사용해보자!



리눅스에서 사용해볼 것인데 설치방법은 다음과 같다. 

1
2
3
4
5
6
7
8
9
git clone https://github.com/doxygen/doxygen.git
cd doxygen
 
mkdir build
cd build
cmake -"Unix Makefiles" ..
make
make install




하지만 다음과 같이 만약 cmake -G "Unix Makefiles" .. 를 하였는데 에러가 발생한다면



1
2
apt-get install flex
apt-get install bison



위의 명령어로 flex와 Bison을 설치하면 정상적으로 Make 할 수 있게 된다.


사용의 편의성을 위하여 GUI도 설치해주자!

1
apt-get install doxygen doxygen-gui



사용법은 간단하다. 아래의 명령어를 입력해보자

1
doxywizard




 


step1 : 소스코드의 위치를 지정해준다.

step2

project name은 원하는 대로 지어주자

Source code directroy : Doxygen을 이용하여 분석할 소스코드 디렉토리 경로를 지정해준다.

Destination directory : 그 결과물을 저장할 경로를 지정해준다.

project version or id : 프로젝트 버전을 의미한다.

Scan recursively :  소스코드의 위치의 모든 하위 폴더까지 스캔한다

(선택하지 않을 시, 하위 폴더에 대한 문서는 생성하지 않음)









Documented entities only : 문서화된 엔티티만을 선택

All Entities : 모든 엔티티를 의미함

Include cross-referenced source code in the output : 각 함수마다 사용한 함수로의 링크를 생성함

Select programming language to optimize the results for : 언어를 선택함











plain HTML : 평문 HTML  기본 같음

with navigation panel : 문서 왼쪽에 탐색 트리를 설정할 수 있음

prepare for compress HTML(.chm) : .chm파일을 생성할 떄 사용함 -> Output 에서 with function은 해제해야함










Dot graphs to generate :  소스코드 간의 관계를 GraphViz로 표현하도록 설정  

GraphViz : 그래프로 시각화 해주는 여러 도구들의 모음을 의미함 -> 기본적으로 DOT라는 언어를 사용하나

      제공하는 라이브러리를 이용하면 다른언어도 가능! Doxygen에서는 

      파일간 종속관계, 함수 호출 관계, 클래스 계층 등을 그래프로 표현할 때 사용함


GraphViz 설치 방법 

1
apt-get install graphviz



아래의 명령어로 설치 위치를 확인할 수 있다.

1
which dot












OUTPUT_LANGUAGE : 출력 문서 언어 설정 (한국어도 가능함, 깨질 경우 Korean-en을 선택)

ALWAYS_DETALDE_SEC : 항상 상세 정보를 보여줌 설정

INLINE_INHERITED_MEMB : 소멸자와 상속자를 제외한 상속된 모든 멤버를 보여준다.











EXTRACT_ALL: 소스코드의 모든 요소가 문서화 대상이 됨을 설정함.

EXTRACT_PRIVATE : 클래스 내의 모든 private 멤버가 문서화 대상이 됨을 설정함.

EXTRACT_STATIC : 클래스 내의 모든 static 멤버가 문서화 대상이 됨을 설정함.










INLIVE_SOURCES : 함수 설명서 함수 코드를 보여줌.











CLASS_DIAGRAMS : 클래스의 상속 구조 다이어그램을 나타낸다.

UML_LOOK : 다이어그램을 UML 형식으로 나타낸다.

UML (Unified Modeling Language) :  소프트공학에서 사용되는 표준화된 범용 모델링 언어이다.

                                                              이 표준은 UML을 고안한 객체 관리 그룹에서 관리 하고 있다.


DOT_PATH : dot 프로그램(Graphviz)의 위치를 지정함









Run doxygen : doxygen 실행

Show HTML output : HTML로 문서화 확인가능

반응형