使用GTK-DOC自动生成API文档

作者:刘旭晖 Raymond转载请注明出处

Emailcolorant@163.com

BLOGhttp://blog.csdn.net/colorant/

主页:http://sites.google.com/site/rgbbones/

      

之前很少做从零开始做上层应用和中间层的开发,所以从来没有接触过API文档的自动生成这个话题,一直以为这是个很复杂的工作,最近做一个简单的项目,有需求自己从头完整的创建整个项目的框架,所以正好用gtk-doc-tools实践一把文档的自动生成工作,发现其实还是很简单易用的,记录一下一些要点如下。

 

1         相关参考资料

http://library.gnome.org/devel/gtk-doc-manual/stable/ GTK-DOC的官方使用手册

如果你仔细的看过这份手册,再在实际实践中处理过一些可能遇到的问题,基本上就不用看我的这篇文档了 ;-)

 

2         工作机制

GTK-Doc是一个用来从C代码的注释中生成API文档的工具,尤其适用于使用gobject对象机制编程的项目,并不局限于GTK+GNOME相关library和程序的文档生成。

2.1        主要工作流程

基本上,使用GTK-Doc生成API文档,包括几个步骤:

Ø       在项目相关目录和Build相关文件中添加 GTK-Doc所需参数和相关配置文件。

Ø       在代码中按照一定的格式规范添加注释(于普通的注释相比,只需要添加非常少的额外信息)

Ø       使用标准的Build流程(autogenconfiguremake等)编译并生成文档

Ø       修改部分GTK-Doc生成的模板和配置文件,进行一些定制工作,如排除某些函数,定制布局,添加而外的help文档等(这部分工作并不需要每次都做,这些模板和配置文件只在第一次build的时候生成,以后不会自动覆盖)

3         步骤

3.1        添加Build所需内容

Ø       添加目录结构:通常会将API文档创建在docs/reference目录中。根据需求可以创建多个子目录用于不同的模块。另外,在各层目录结构中,添加标准的Makefile.am文件用来包含子目录就不用多说了吧。

Ø       Autogen.sh: automakeautoconf等操作之前,添加gtkdocize || exit 1,如果你没有创建autogen.sh,那么你就需要在build之前手工执行gtkdocize命令。 可以使用 gtkdocize –flavour no-tmpl 来限制不生成tmpl模板目录(即不使用中间模板,文档全部内容直接从source code获得)

Ø       Configure.ac: 添加gtk-doc检测的相关宏,如:GTK_DOC_CHECK(1.9) 除了检查GTK-Doc的版本,这个宏还将在configure脚本中添加 –enable-gtk-doc选项,需要注意的是,这个选项默认是disable

Ø       Makefile.am: docs/reference或你创建的其它文档子目录下,拷贝gtk-doc-toolsexample Makefile.amubuntu中安装在/usr/share/doc/gtk-doc-tools/examples/Makefile.am)并根据实际情况修改里面的内容(每个选项都有具体的解释)。通常你所需要修改的大概会有:

 

模块的名字:DOC_MODULE=

代码的相对路径:DOC_SOURCE_DIR=

文档在哪些文件被修改时需要被重新build,即依赖关系:HFILE_GLOB= , CFILE_GLOB=

需要忽略的文件:IGNORE_HFILES=

3.2        在代码中添加注释

GTK-Doc所识别的注释都是以 “/**” 开头,每行一个 “*”,以”*/” 结尾,中间包含一些特定的关键字或符号用于标明注释的内容和类型,以区别于普通文本。

3.2.1          文件头的格式

首先当然是要给文件添加文件级的注释,格式如下

/**

 * SECTION:meepapp

 * @short_description: the application class

 * @see_also: #MeepSettings

 * @stability: Stable

 * @include: meep/app.h

 *

 * The application class handles ...

 */

 

Ø       SECTION: 文件名

Ø       @short_description: 该文件内容的简单描述

Ø       @see_also: 与该文档相关的内容,符号等

Ø       @stability: 版本稳定性信息

Ø       @include: 使用该文件中的函数,所需要包含的头文件,注意不用写<…>”…”

3.2.2          函数的注释格式

函数的注释格式大体如下:

/**

 * function_name:

 * @par1:  description of parameter 1

 * @par2:  description of parameter 2

 *

 * The function description goes here.

 *

 * Returns: an integer.

*

* Since: Version

 */

 

Ø       类似@par1: 这样以”@”开头的符号标识了你需要注释的函数参数。

Ø       Returns: 函数的返回信息

Ø       Since: 从哪个版本引入的函数

 

3.2.3          其它

需要注意的一点是,上面这些关键字多数都是可选的,即使不写任何注释,GTK-Doc也会将函数,结构,属性,信号等信息自动的添加到API文档中,只是没有额外的说明信息。另外,staticinline的函数不会被添加到文档中。

结构,属性,信号等注释的格式这里就不多说了,简单的就看看别人的代码怎么写的,要想了解得详细些,就参考gtk-doc的官方手册吧。

3.3        定制最终输出结果

最终的文档会由一个主文件将各个Section的页面链接在一起,这个主文件的SGML/XML模板文件(MODULE-docs.sgml)在第一次build的时候生成,在以后的build中不会被覆盖(即使使用make distclean也不会被删除)。你可以修改这个主文件模板,将输出的section组织在不同的chapter中,或着添加额外的内容等等。

同样,你还可以修改MODULE-sections.txt文件,定制各个Section页面的布局和内容。这个文件同样不会在build过程中被自动覆盖。

### 回答1: 要进行gtk-doc-tools的离线安装,您需要以下步骤。 1. 下载gtk-doc-tools的源代码包。您可以从Gtk官方网站或其他可靠的源进行下载。确保下载对应于您操作系统和版本的正确包。 2. 在您的计算机上解压源代码包。您可以选择将其解压到任意位置,例如您的主文件夹或者/opt目录。解压后,您将会得到一个包含gtk-doc-tools的文件夹。 3. 打开终端,并切换到解压后的文件夹中。 4. 运行以下命令以配置gtk-doc-tools的安装选项: ``` ./configure ``` 该命令将会检查您的系统环境,并根据您的配置进行预准备。 5. 运行以下命令以编译gtk-doc-tools: ``` make ``` 这将会开始编译gtk-doc-tools。这个过程可能需要一些时间,请耐心等待。 6. 运行以下命令以安装gtk-doc-tools: ``` sudo make install ``` 这个命令将会将gtk-doc-tools安装到您的操作系统中。请确保您具有足够的权限来安装软件。 7. 安装完成后,您可以通过在终端中运行gtk-doc-check命令来验证安装是否成功。如果安装成功,您将会看到相关信息。 通过以上步骤,您可以离线安装gtk-doc-tools。请注意,由于系统配置和版本的差异,可能会影响安装过程。 ### 回答2: 要离线安装gtk-doc-tools,您需要进行以下步骤: 1. 首先,您需要下载gtk-doc-tools的离线安装包。您可以在gtk-doc-tools官方网站或其他可信的软件下载网站上找到这个安装包。确保下载的安装包与您系统的架构和版本相匹配。 2. 在下载完安装包后,将其解压缩到您想要安装gtk-doc-tools的目录。您可以选择将其解压缩到系统的默认目录,或者根据个人喜好选择其他目录。 3. 打开终端(Terminal)并导航到解压缩的gtk-doc-tools目录。 4. 在终端中,输入以下命令以开始安装过程: ``` ./configure make make install ``` 这些命令将配置安装环境,并编译和安装gtk-doc-tools。 5. 安装完成后,您可以通过运行以下命令来验证gtk-doc-tools是否成功安装: ``` gtkdoc-scan --version ``` 如果成功安装,您将看到gtk-doc-tools的版本信息。 请注意,离线安装gtk-doc-tools可能需要一些先决条件,例如GLib、Make、GCC等。如果您在安装过程中遇到依赖错误,请根据错误消息安装缺失的依赖项。 总之,通过下载gtk-doc-tools的离线安装包,解压缩并使用终端进行安装,您可以离线安装gtk-doc-tools。请确保您在安装过程中满足所有的依赖项和系统要求。 ### 回答3: gtk-doc-tools是一组用于生成GTK+应用程序文档的工具集。如果需要进行离线安装,可以按照以下步骤进行操作: 1. 首先,将gtk-doc-tools的源代码下载到本地。可以通过官方网站或者其他可靠的源代码仓库获取到最新的源代码包。下载源代码包后,解压缩到指定目录。 2. 进入解压缩后的目录,使用终端进入该目录。 3. 在终端中执行以下命令来安装gtk-doc-tools之前的依赖包:sudo apt-get install autoconf automake libtool 4. 在终端中执行以下命令来配置gtk-doc-tools的安装选项:./configure --prefix=/usr 这里的"--prefix=/usr"参数指定了gtk-doc-tools安装的目标路径,可以根据需要进行调整。 5. 配置完成后,执行make命令来编译gtk-doc-tools。这个过程可能需要一些时间,具体取决于您的计算机性能。 6. 编译完成后,执行sudo make install命令来安装gtk-doc-tools。这个命令将会将gtk-doc-tools的文件复制到指定的安装目录。 7. 安装完成后,可以在终端中执行gtkdocize命令来验证gtk-doc-tools是否已经成功安装。如果终端返回了gtkdocize的版本信息,则表示安装成功。 至此,gtk-doc-tools已经成功进行了离线安装。你可以在终端中使用gtk-doc-tools来生成GTK+应用程序的文档,为开发和使用这些应用程序提供参考和帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值