尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

Doxyfile模板文件

Doxyfile模板文件
📅 发布时间:2026/7/22 15:40:22

当前工作区的文件写入接口返回了权限错误,因此配置文件没有成功保存。你可以将下面内容保存为项目根目录下的Doxyfile:

PROJECT_NAME = "C/C++ Project" PROJECT_NUMBER = "1.0.0" PROJECT_BRIEF = "API documentation" OUTPUT_DIRECTORY = docs CREATE_SUBDIRS = NO INPUT = . FILE_PATTERNS = *.c *.cc *.cpp *.cxx *.h *.hh *.hpp *.hxx *.md RECURSIVE = YES EXCLUDE = ./docs ./build ./cmake-build-* EXTRACT_ALL = YES EXTRACT_PRIVATE = NO EXTRACT_STATIC = YES HIDE_UNDOC_MEMBERS = NO HIDE_UNDOC_CLASSES = NO SOURCE_BROWSER = YES INLINE_SOURCES = NO REFERENCED_BY_RELATION = YES REFERENCES_RELATION = YES USE_MDFILE_AS_MAINPAGE = README.md MARKDOWN_SUPPORT = YES HAVE_DOT = NO CLASS_DIAGRAMS = YES GENERATE_HTML = YES HTML_OUTPUT = html HTML_TIMESTAMP = YES GENERATE_TREEVIEW = YES DISABLE_INDEX = NO SEARCHENGINE = YES GENERATE_LATEX = NO GENERATE_XML = NO DOXYFILE_ENCODING = UTF-8 INPUT_ENCODING = UTF-8 OUTPUT_LANGUAGE = Chinese ALLOW_UNICODE_NAMES = YES QUIET = NO WARNINGS = YES WARN_IF_UNDOCUMENTED = NO WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO WARN_AS_ERROR = NO WARN_LOGFILE = docs/doxygen-warnings.log ENABLE_PREPROCESSING = YES MACRO_EXPANSION = NO EXPAND_ONLY_PREDEF = NO SKIP_FUNCTION_MACROS = YES HTML_COLORSTYLE = AUTO_LIGHT HTML_COLORSTYLE_HUE = 220 HTML_COLORSTYLE_SAT = 100 HTML_COLORSTYLE_GAMMA = 80 USE_MATHJAX = NO SORT_MEMBER_DOCS = YES SORT_BRIEF_DOCS = NO SORT_BY_SCOPE_NAME = YES

在包含Doxyfile的目录中执行:

doxygen Doxyfile

生成的 HTML 首页位于:

docs/html/index.html

如果希望扫描指定源代码目录,可以把:

INPUT = .

改成:

INPUT = src include

如果没有README.md,则删除这一行:

USE_MDFILE_AS_MAINPAGE = README.md

如果是一个cuda项目,里面既有c cpp 还有cu文件,那么,

适用。Doxygen 可以处理同时包含.c、.cpp、.cu和.cuh的 CUDA 项目,但需要把 CUDA 文件映射为 C++,并让预处理器忽略部分 CUDA 关键字。

在之前的Doxyfile中修改以下配置即可:

FILE_PATTERNS = *.c \ *.cc \ *.cpp \ *.cxx \ *.h \ *.hh \ *.hpp \ *.hxx \ *.cu \ *.cuh \ *.md EXTENSION_MAPPING = cu=C++ \ cuh=C++

建议将完整的预处理配置写成:

ENABLE_PREPROCESSING = YES MACRO_EXPANSION = YES EXPAND_ONLY_PREDEF = YES SKIP_FUNCTION_MACROS = YES PREDEFINED = __CUDACC__ \ "__host__=" \ "__device__=" \ "__global__=" \ "__shared__=" \ "__constant__=" \ "__managed__=" \ "__restrict__=" \ "__forceinline__=inline" \ "__noinline__=" \ "__align__(x)=" \ "__launch_bounds__(x)="

作用是让 Doxygen 分析下面的 CUDA 代码时,不被 CUDA 专用修饰符干扰:

__global__voidvector_add(constfloat*a,constfloat*b,float*c,intn);

Doxygen 会近似把它当成:

voidvector_add(constfloat*a,constfloat*b,float*c,intn);

这里只影响文档解析,不会修改或影响 CUDA 编译。

适合 CUDA 项目的关键配置可以整合为:

PROJECT_NAME = "CUDA Project" INPUT = src include RECURSIVE = YES FILE_PATTERNS = *.c *.cc *.cpp *.cxx \ *.h *.hh *.hpp *.hxx \ *.cu *.cuh *.md EXTENSION_MAPPING = cu=C++ cuh=C++ EXCLUDE = build \ docs \ cmake-build-* \ third_party EXTRACT_ALL = YES EXTRACT_STATIC = YES SOURCE_BROWSER = YES REFERENCED_BY_RELATION = YES REFERENCES_RELATION = YES ENABLE_PREPROCESSING = YES MACRO_EXPANSION = YES EXPAND_ONLY_PREDEF = YES SKIP_FUNCTION_MACROS = YES PREDEFINED = __CUDACC__ \ "__host__=" \ "__device__=" \ "__global__=" \ "__shared__=" \ "__constant__=" \ "__managed__=" \ "__restrict__=" \ "__forceinline__=inline" \ "__noinline__=" \ "__align__(x)=" \ "__launch_bounds__(x)=" GENERATE_HTML = YES HTML_OUTPUT = html GENERATE_TREEVIEW = YES GENERATE_LATEX = NO OUTPUT_DIRECTORY = docs OUTPUT_LANGUAGE = Chinese INPUT_ENCODING = UTF-8

CUDA 函数的注释写法和普通 C++ 一样:

/** * @brief 在 GPU 上执行向量加法。 * * 每个 CUDA 线程负责计算一个数组元素。 * * @param[in] a 输入向量 A 的设备指针。 * @param[in] b 输入向量 B 的设备指针。 * @param[out] c 输出向量 C 的设备指针。 * @param[in] n 向量元素数量。 * * @pre `a`、`b` 和 `c` 必须指向有效的设备内存。 * @note 该函数是 CUDA 核函数,必须使用 `<<<grid, block>>>` 启动。 */__global__voidvector_add(constfloat*a,constfloat*b,float*c,intn);

CPU 包装函数也可以单独说明:

/** * @brief 启动向量加法 CUDA 核函数。 * * @param[in] a 输入向量 A 的设备指针。 * @param[in] b 输入向量 B 的设备指针。 * @param[out] c 输出向量 C 的设备指针。 * @param[in] n 向量元素数量。 * @param[in] stream CUDA 执行流。 * * @return CUDA API 返回的错误状态。 */cudaError_tlaunch_vector_add(constfloat*a,constfloat*b,float*c,intn,cudaStream_t stream);
# Doxygen configuration for a mixed C/C++/CUDA project. PROJECT_NAME = "CUDA Project" PROJECT_NUMBER = "1.0.0" PROJECT_BRIEF = "C/C++/CUDA API documentation" OUTPUT_DIRECTORY = docs CREATE_SUBDIRS = NO # Change INPUT to "src include" when those are the only source directories. INPUT = . RECURSIVE = YES FILE_PATTERNS = *.c \ *.cc \ *.cpp \ *.cxx \ *.h \ *.hh \ *.hpp \ *.hxx \ *.cu \ *.cuh \ *.md EXTENSION_MAPPING = cu=C++ \ cuh=C++ EXCLUDE = ./docs \ ./build \ ./cmake-build-* \ ./third_party EXCLUDE_PATTERNS = */.git/* \ */CMakeFiles/* EXTRACT_ALL = YES EXTRACT_PRIVATE = NO EXTRACT_STATIC = YES EXTRACT_LOCAL_CLASSES = YES HIDE_UNDOC_MEMBERS = NO HIDE_UNDOC_CLASSES = NO SOURCE_BROWSER = YES INLINE_SOURCES = NO STRIP_CODE_COMMENTS = YES REFERENCED_BY_RELATION = YES REFERENCES_RELATION = YES CALL_GRAPH = NO CALLER_GRAPH = NO MARKDOWN_SUPPORT = YES USE_MDFILE_AS_MAINPAGE = README.md AUTOLINK_SUPPORT = YES # Parse CUDA files as C++ and remove CUDA-only qualifiers. ENABLE_PREPROCESSING = YES MACRO_EXPANSION = YES EXPAND_ONLY_PREDEF = YES SKIP_FUNCTION_MACROS = YES PREDEFINED = __CUDACC__ \ "__host__=" \ "__device__=" \ "__global__=" \ "__shared__=" \ "__constant__=" \ "__managed__=" \ "__restrict__=" \ "__forceinline__=inline" \ "__noinline__=" \ "__align__(x)=" \ "__launch_bounds__(x)=" GENERATE_HTML = YES HTML_OUTPUT = html HTML_TIMESTAMP = YES GENERATE_TREEVIEW = YES DISABLE_INDEX = NO SEARCHENGINE = YES GENERATE_LATEX = NO GENERATE_XML = NO GENERATE_MAN = NO DOXYFILE_ENCODING = UTF-8 INPUT_ENCODING = UTF-8 OUTPUT_LANGUAGE = Chinese ALLOW_UNICODE_NAMES = YES QUIET = NO WARNINGS = YES WARN_IF_UNDOCUMENTED = NO WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO WARN_AS_ERROR = NO WARN_LOGFILE = docs/doxygen-warnings.log HAVE_DOT = NO CLASS_DIAGRAMS = YES USE_MATHJAX = NO SORT_MEMBER_DOCS = YES SORT_BRIEF_DOCS = NO SORT_BY_SCOPE_NAME = YES

需要注意:Doxygen 的职责是生成 API 文档,并不会验证 kernel 的线程配置、设备指针或 CUDA 代码是否能正确编译。CUDA 编译正确性仍应由nvcc、CMake 和测试程序保证。

相关新闻

  • Android Studio 模拟器(AVD)安装与排错
  • Canvas粒子系统实现情绪化动画:从烟花易冷看代码艺术创作
  • 2026 年 GPT-5.6 全面解析:核心区别、使用方法与开发者实践

最新新闻

  • 可复用项目脚手架应该包含什么
  • HDMI控制器寄存器详解:色彩空间转换与中断控制实战指南
  • 深入解析TI Davinci VPDMA:客户端缓冲与中断机制实战指南
  • 多接口联动实战:本地数据引擎如何构建完整量化分析体系
  • Terraspace安全最佳实践:保护敏感数据与合规部署的5个关键策略
  • CAD自建图块库|标准件一键入库,反复调用超省心

日新闻

  • AI云原生实战05-金融AI上云最难的不是技术,是“不出事“——TCE银行风控架构拆解
  • 2026年GEOSEO优化公司选型深度测评:五大硬核标准严选,这六家重塑搜索增长新格局 - 品牌前沿专家
  • **核验!2026年7月卡地亚香港**售后网点地址及服务电话公告 - 卡地亚服务中心

周新闻

  • SaaS软件行业GEO实践:AI搜索时代的品牌可见性与获客新路径
  • 什么是PCTFE?医药高端包装的“防潮王牌“材料
  • 【JVM调优实战】16-可视化利器-JConsole-VisualVM-JMC

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号