2012-06-14 3 views
0

내 C++ 프로젝트에서 문서 생성을 위해 doxygen을 사용하고 있습니다. 내 프로젝트는 doxygen이가 잘 작동이이 코드를 구축하고 상세한 문서를받은 후 클래스 함수와 같은 절차 호출,doxygen 생성 오류

//AAA.h 
namespace NAME 
{ 
    Class EXPORT AAA 
    { 
    /*! 
    * \brief Sample function. 
    * 
    * \param a is an integer value. 
    * 
    * This is a sample function. 
    */ 
    void SampleFunction(int a); 
    } 
}' 

모두 포함되어 있습니다. 하지만 난 doxygen이이 간략한 설명과 함께 함수 이름을 생성하는 절차 호출과 같은,

//BBB.h 
namespace NAME2 
{ 
    /*! 
    * \brief This is a function  
    * 
    * \param b is a float 
    * 
    * This is a function 
    */ 
    void function(float b); 
} 
즉, 문서가 생성하는 코드를 작성하지만 설명은 HTML 파일 누락 후

,

이것을 시도 할 때 그러나 함수 이름을 클릭하면 함수 설명에 html 파일이 없음을 알 수 있습니다. 다음은 내 프로젝트의 doxygen에 대한 doxyfile입니다. doxyfile에서 어떤 필드가 변경 될지 전체 문서를 생성 하시겠습니까? EXTRACT_ALL=YES가 작동하지 않습니다

# Doxyfile 1.5.5 

    #--------------------------------------------------------------------------- 
    # Project related configuration options 
    #--------------------------------------------------------------------------- 
    DOXYFILE_ENCODING  = UTF-8 
    PROJECT_NAME   = "SAMPLE" 
    PROJECT_NUMBER   = 0.0 
    OUTPUT_DIRECTORY  = internal_docs/ 
    CREATE_SUBDIRS   = NO 
    OUTPUT_LANGUAGE  = English 
    BRIEF_MEMBER_DESC  = YES 
    REPEAT_BRIEF   = YES 
    ABBREVIATE_BRIEF  = "The $name class" \ 
          "The $name widget" \ 
          "The $name file" \ 
          is \ 
          provides \ 
          specifies \ 
          contains \ 
          represents \ 
          a \ 
          an \ 
          the 
    ALWAYS_DETAILED_SEC = NO 
    INLINE_INHERITED_MEMB = NO 
    FULL_PATH_NAMES  = NO 
    STRIP_FROM_PATH  = ../src/ 
    STRIP_FROM_INC_PATH = 
    SHORT_NAMES   = YES 
    JAVADOC_AUTOBRIEF  = NO 
    QT_AUTOBRIEF   = NO 
    MULTILINE_CPP_IS_BRIEF = NO 
    INHERIT_DOCS   = YES 
    SEPARATE_MEMBER_PAGES = NO 
    TAB_SIZE    = 8 
    ALIASES    = 
    OPTIMIZE_OUTPUT_FOR_C = NO 
    OPTIMIZE_OUTPUT_JAVA = NO 
    OPTIMIZE_FOR_FORTRAN = NO 
    OPTIMIZE_OUTPUT_VHDL = NO 
    BUILTIN_STL_SUPPORT = NO 
    CPP_CLI_SUPPORT  = NO 
    SIP_SUPPORT   = NO 
    DISTRIBUTE_GROUP_DOC = NO 
    SUBGROUPING   = YES 
    TYPEDEF_HIDES_STRUCT = NO 
    #--------------------------------------------------------------------------- 
    # Build related configuration options 
    #--------------------------------------------------------------------------- 
    EXTRACT_ALL   = NO 
    EXTRACT_PRIVATE  = YES 
    EXTRACT_STATIC   = YES 
    EXTRACT_LOCAL_CLASSES = YES 
    EXTRACT_LOCAL_METHODS = YES 
    EXTRACT_ANON_NSPACES = NO 
    HIDE_UNDOC_MEMBERS  = NO 
    HIDE_UNDOC_CLASSES  = NO 
    HIDE_FRIEND_COMPOUNDS = NO 
    HIDE_IN_BODY_DOCS  = NO 
    INTERNAL_DOCS   = NO 
    CASE_SENSE_NAMES  = YES 
    HIDE_SCOPE_NAMES  = NO 
    SHOW_INCLUDE_FILES  = YES 
    INLINE_INFO   = YES 
    SORT_MEMBER_DOCS  = NO 
    # GG setting below to YES will cause things to be alphabetic 
    SORT_BRIEF_DOCS  = YES 
    SORT_GROUP_NAMES  = NO 
    SORT_BY_SCOPE_NAME  = NO 
    GENERATE_TODOLIST  = YES 
    GENERATE_TESTLIST  = YES 
    GENERATE_BUGLIST  = YES 
    GENERATE_DEPRECATEDLIST= YES 
    ENABLED_SECTIONS  = 
    MAX_INITIALIZER_LINES = 30 
    SHOW_USED_FILES  = YES 
    SHOW_DIRECTORIES  = NO 
    FILE_VERSION_FILTER = 
    #--------------------------------------------------------------------------- 
    # configuration options related to warning and progress messages 
    #--------------------------------------------------------------------------- 
    QUIET     = YES 
    WARNINGS    = YES 
    WARN_IF_UNDOCUMENTED = YES 
    WARN_IF_DOC_ERROR  = YES 
    WARN_NO_PARAMDOC  = YES 
    WARN_FORMAT   = "$file:$line: $text" 
    WARN_LOGFILE   = 
    #--------------------------------------------------------------------------- 
    # configuration options related to the input files 
    #--------------------------------------------------------------------------- 
    INPUT     = ../internal_include/ ../include/ 
    INPUT_ENCODING   = UTF-8 
    FILE_PATTERNS   = *.c \ 
          *.cc \ 
          *.cxx \ 
          *.cpp \ 
          *.c++ \ 
          *.d \ 
          *.java \ 
          *.ii \ 
          *.ixx \ 
          *.ipp \ 
          *.i++ \ 
          *.inl \ 
          *.h \ 
          *.hh \ 
          *.hxx \ 
          *.hpp \ 
          *.h++ \ 
          *.idl \ 
          *.odl \ 
          *.cs \ 
          *.php \ 
          *.php3 \ 
          *.inc \ 
          *.m \ 
          *.mm \ 
          *.dox \ 
          *.py \ 
          *.f90 \ 
          *.f \ 
          *.vhd \ 
          *.vhdl \ 
          *.C \ 
          *.CC \ 
          *.C++ \ 
          *.II \ 
          *.I++ \ 
          *.H \ 
          *.HH \ 
          *.H++ \ 
          *.CS \ 
          *.PHP \ 
          *.PHP3 \ 
          *.M \ 
          *.MM \ 
          *.PY \ 
          *.F90 \ 
          *.F \ 
          *.VHD \ 
          *.VHDL 
    RECURSIVE    = YES 
    EXCLUDE    = 
    EXCLUDE_SYMLINKS  = NO 
    EXCLUDE_PATTERNS  = 
    EXCLUDE_SYMBOLS  = 
    EXAMPLE_PATH   = 
    EXAMPLE_PATTERNS  = * 
    EXAMPLE_RECURSIVE  = NO 
    IMAGE_PATH    = 
    INPUT_FILTER   = 
    FILTER_PATTERNS  = 
    FILTER_SOURCE_FILES = NO 
    #--------------------------------------------------------------------------- 
    # configuration options related to source browsing 
    #--------------------------------------------------------------------------- 
    # GG changed below to NO 7/16/2010 
    SOURCE_BROWSER   = NO 
    INLINE_SOURCES   = NO 
    STRIP_CODE_COMMENTS = YES 
    # GG changed below to NO 7/16/2010 
    REFERENCED_BY_RELATION = NO 
    # GG changed below to NO 7/16/2010 
    REFERENCES_RELATION = NO 
    # GG changed below to NO 7/16/2010 
    REFERENCES_LINK_SOURCE = NO 
    USE_HTAGS    = NO 
    # GG changed below to NO 7/16/2010 
    VERBATIM_HEADERS  = NO 
    #--------------------------------------------------------------------------- 
    # configuration options related to the alphabetical class index 
    #--------------------------------------------------------------------------- 
    ALPHABETICAL_INDEX  = NO 
    COLS_IN_ALPHA_INDEX = 5 
    IGNORE_PREFIX   = 
    #--------------------------------------------------------------------------- 
    # configuration options related to the HTML output 
    #--------------------------------------------------------------------------- 
    GENERATE_HTML   = YES 
    HTML_OUTPUT   = html 
    HTML_FILE_EXTENSION = .html 
    HTML_HEADER   = 
    HTML_FOOTER   = external_docs/files/footer.html 
    HTML_STYLESHEET  = 
    HTML_ALIGN_MEMBERS  = YES 
    GENERATE_HTMLHELP  = NO 
    GENERATE_DOCSET  = NO 
    DOCSET_FEEDNAME  = "Doxygen generated docs" 
    DOCSET_BUNDLE_ID  = org.doxygen.Project 
    HTML_DYNAMIC_SECTIONS = NO 
    CHM_FILE    = 
    HHC_LOCATION   = 
    GENERATE_CHI   = NO 
    BINARY_TOC    = NO 
    TOC_EXPAND    = NO 
    #GG line below changed 
    DISABLE_INDEX   = YES 
    ENUM_VALUES_PER_LINE = 1 
    #GG line below changed 
    GENERATE_TREEVIEW  = NO 
    TREEVIEW_WIDTH   = 250 
    #--------------------------------------------------------------------------- 
    # configuration options related to the LaTeX output 
    #--------------------------------------------------------------------------- 
    GENERATE_LATEX   = NO 
    LATEX_OUTPUT   = latex 
    LATEX_CMD_NAME   = latex 
    MAKEINDEX_CMD_NAME  = makeindex 
    COMPACT_LATEX   = NO 
    PAPER_TYPE    = a4wide 
    EXTRA_PACKAGES   = 
    LATEX_HEADER   = 
    PDF_HYPERLINKS   = YES 
    USE_PDFLATEX   = YES 
    LATEX_BATCHMODE  = NO 
    LATEX_HIDE_INDICES  = NO 
    #--------------------------------------------------------------------------- 
    # configuration options related to the RTF output 
    #--------------------------------------------------------------------------- 
    GENERATE_RTF   = NO 
    RTF_OUTPUT    = rtf 
    COMPACT_RTF   = NO 
    RTF_HYPERLINKS   = NO 
    RTF_STYLESHEET_FILE = 
    RTF_EXTENSIONS_FILE = 
    #--------------------------------------------------------------------------- 
    # configuration options related to the man page output 
    #--------------------------------------------------------------------------- 
    GENERATE_MAN   = NO 
    MAN_OUTPUT    = man 
    MAN_EXTENSION   = .3 
    MAN_LINKS    = NO 
    #--------------------------------------------------------------------------- 
    # configuration options related to the XML output 
    #--------------------------------------------------------------------------- 
    GENERATE_XML   = NO 
    XML_OUTPUT    = xml 
    XML_SCHEMA    = 
    XML_DTD    = 
    XML_PROGRAMLISTING  = YES 
    #--------------------------------------------------------------------------- 
    # configuration options for the AutoGen Definitions output 
    #--------------------------------------------------------------------------- 
    GENERATE_AUTOGEN_DEF = NO 
    #--------------------------------------------------------------------------- 
    # configuration options related to the Perl module output 
    #--------------------------------------------------------------------------- 
    GENERATE_PERLMOD  = NO 
    PERLMOD_LATEX   = NO 
    PERLMOD_PRETTY   = YES 
    PERLMOD_MAKEVAR_PREFIX = 
    #--------------------------------------------------------------------------- 
    # Configuration options related to the preprocessor 
    #--------------------------------------------------------------------------- 
    ENABLE_PREPROCESSING = YES 
    MACRO_EXPANSION  = YES 
    EXPAND_ONLY_PREDEF  = YES 
    SEARCH_INCLUDES  = YES 
    INCLUDE_PATH   = 
    INCLUDE_FILE_PATTERNS = 
    PREDEFINED    = EXPORT = 
    EXPAND_AS_DEFINED  = 
    SKIP_FUNCTION_MACROS = YES 
    #--------------------------------------------------------------------------- 
    # Configuration::additions related to external references 
    #--------------------------------------------------------------------------- 
    TAGFILES    = 
    GENERATE_TAGFILE  = 
    ALLEXTERNALS   = NO 
    EXTERNAL_GROUPS  = YES 
    PERL_PATH    = /usr/bin/perl 
    #--------------------------------------------------------------------------- 
    # Configuration options related to the dot tool 
    #--------------------------------------------------------------------------- 
    CLASS_DIAGRAMS   = NO 
    MSCGEN_PATH   = 
    HIDE_UNDOC_RELATIONS = YES 
    HAVE_DOT    = NO 
    CLASS_GRAPH   = YES 
    COLLABORATION_GRAPH = YES 
    GROUP_GRAPHS   = YES 
    UML_LOOK    = NO 
    TEMPLATE_RELATIONS  = NO 
    INCLUDE_GRAPH   = YES 
    INCLUDED_BY_GRAPH  = YES 
    CALL_GRAPH    = YES 
    CALLER_GRAPH   = NO 
    GRAPHICAL_HIERARCHY = YES 
    DIRECTORY_GRAPH  = YES 
    DOT_IMAGE_FORMAT  = png 
    DOT_PATH    = 
    DOTFILE_DIRS   = 
    DOT_GRAPH_MAX_NODES = 50 
    MAX_DOT_GRAPH_DEPTH = 1000 
    DOT_TRANSPARENT  = YES 
    DOT_MULTI_TARGETS  = NO 
    GENERATE_LEGEND  = YES 
    DOT_CLEANUP   = YES 
    #--------------------------------------------------------------------------- 
    # Configuration::additions related to the search engine 
    #--------------------------------------------------------------------------- 
    SEARCHENGINE   = NO 
+1

'EXTRACT_ALL = YES'를 설정하면 어떻게됩니까? 그럴 필요는 없어.하지만 ... –

+0

좋은 캐치! 이제 작동합니다. 고마워. –

답변

0

경우, 다음과 같이 문서의 형식을 시도해보십시오 doxygen이 FAQ에서

// Format: 
/** 
* 
*/ 

// ex: 
//BBB.h 
namespace NAME2 
{ 
    /** 
    * \brief This is a function  
    * 
    * \param b is a float 
    * 
    * This is a function 
    */ 
    void function(float b); 
} 
+0

이 양식과 OP 양식의 차이점은 무엇입니까? '/ **'는'/ *! '와 같습니다. – Chris

+1

아마도 Doxygen의 버그 일 수도 있습니다. 모르겠습니다. 하지만 내가 아는 것은'/ **'이 잘 작동한다는 것입니다. 왜냐하면 저는 그것을 사용하고 있기 때문입니다;) – Synxis

+0

충분히 공정하게! 나는'/ **'를 사용하는 경향이 있지만'/ *! '는 그냥 작동한다고 가정합니다. – Chris

1

: 내 기능의 NO 없음으로 EXTRACT_ALL을 설정

문서에 나와 있습니다. 전역 함수, 변수, 열거, 형식 정의를 위해서는

, 그리고 당신이이 명령은 \file (또는 @file) 명령이 포함 된 주석 블록을 사용하여 위치하는 파일을 문서화해야 문서화 정의합니다.

네임 스페이스의 일부인 멤버 함수 또는 함수의 경우 클래스 또는 네임 스페이스를 문서화해야합니다.

당신은 당신이 파일 BBB.h 또는 네임 스페이스 NAME2을 문서화 시도에서 \file 명령을 포함되었는지 확인할 수 있나요?

+1

Chris는'@file' 명령을 사용하여 문서에 포함 된 내용을보다 잘 제어 할 수 있다고 말합니다. 'EXTRACT_ALL = YES'는 모든 것을 잡는 무딘 도구입니다. –