-
Doxygen 설치!ETC 2018. 9. 24. 09:44
Doxygen을 사용해보자!
리눅스에서 사용해볼 것인데 설치방법은 다음과 같다.
123456789git clone https://github.com/doxygen/doxygen.gitcd doxygenmkdir buildcd buildcmake -G "Unix Makefiles" ..makemake install하지만 다음과 같이 만약 cmake -G "Unix Makefiles" .. 를 하였는데 에러가 발생한다면
12apt-get install flexapt-get install bison위의 명령어로 flex와 Bison을 설치하면 정상적으로 Make 할 수 있게 된다.
사용의 편의성을 위하여 GUI도 설치해주자!
1apt-get install doxygen doxygen-gui사용법은 간단하다. 아래의 명령어를 입력해보자
1doxywizardstep1 : 소스코드의 위치를 지정해준다.
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 설치 방법
1apt-get install graphviz아래의 명령어로 설치 위치를 확인할 수 있다.
1which dotOUTPUT_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로 문서화 확인가능
반응형'ETC' 카테고리의 다른 글
[Mac OS] 모하비 -> 카탈리나 고려해야할점.. (0) 2020.05.17 Linux 파일명이 깨져서 지우기 힘들 때 (0) 2019.02.27 클럭 (0) 2018.09.14 Ubuntu root권한으로 자동로그인 및 활성화 (2) 2018.04.23 해커스쿨 ftz 힌트 한글 (0) 2018.01.14 댓글