Linux下doxygen、graphviz生成chm文档
本文记录的是在Puppy圣诞版(4.0)上安装doxygen1.63、graphviz2.22.2、HTML Help Workshop(v4.74)的过程。本机的Gcc版本为:# gcc --versiongcc (GCC) 4.2.2到官网去下载,网页上只有最新版的下载,老版本的没有下载链接下个1.8.10,然后解压,进入目录后 ./configur
本文记录的是在Puppy圣诞版(4.0)上安装doxygen1.63、graphviz2.22.2、HTML Help Workshop(v4.74)的过程。
本机的Gcc版本为:
# gcc --version
  gcc (GCC) 4.2.2
到官网去下载,网页上只有最新版的下载,老版本的没有下载链接
下个1.8.10,然后解压,进入目录后 ./configure,make 出错,是个语法错误,我认为是Gcc版本低的原因。
看了一下常用的PT1.4中的Doxfile文件,是使用Doxygen 1.4.3版本产生的,我也没有必要使用最新版的。
上网上搜了一下老版本的Doxygen,根本找不到链接。
看了一下官网上的下载链接,ftp://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.10.linux.bin.tar.gz
把后面的文件名去掉,ftp://ftp.stack.nl/pub/users/dimitri/ ,再把此网址在Firefox上的地址栏中“粘贴并转到”,看到了所有版本的下载画面
找一个低版本的1.5.8, make 后安装成功,依次试验高版本,发现本机支持的最高版本是1.6.3。
graphviz的过程基本上是一样的。
网站上显示的是最新版的,所有版本的下载只要把最后的文件名去掉就可以打开。
从2.20开始编译,找不到GD库,./configure --help后,./configure --with-libgd=no --with-mylibgd=yes可以屏蔽本机的GD库,使用Graphviz自己的库。
make 成功了,本机支持最高版本的是Graphviz2.22.2,再高的版本编译不成功。
HTML Help Workshop(v4.74)直接使用Wine不能安装,在WinXP下安装后,把文件夹拷贝到 /root/.wine/drive_c/Progame Files就行了,删除/root/.wine/drive_c/windows/system32/中的 itircl.dll itss.dll,将XP中对应的二个文件拷贝到root/.wine/drive_c/windows/system32,并且删除/usr/share/lib/itss.dll.so,使用regsvr32 root/.wine/drive_c/windows/system32/itss.dll,regsvr32 root/.wine/drive_c/windows/system32/itirc.dll,注册这两个控件。使用下面的脚本能正确编译hhp到chm。
#! /bin/sh
  export DISPLAY=:0.0
  export WINEDLLOVERRIDES="itss=n,b"
  wine /root/.wine/drive_c/Program\ Files/HTML\ Help\ Workshop/hhc.exe index.hhp >a.txt
  测试上述软件都能正常工作时,将下面的文本保存到/bin/Doxygen.linux,Doxygen配置文件如下:
DOXYFILE_ENCODING      = UTF-8
  OUTPUT_LANGUAGE        = Chinese
  OPTIMIZE_OUTPUT_FOR_C  = YES
  CHM_INDEX_ENCODING     = GBK
  PROJECT_NAME           = "My Project"
  CREATE_SUBDIRS         = YES
  RECURSIVE              = YES
  EXAMPLE_RECURSIVE      = YES
  GENERATE_AUTOGEN_DEF   = YES
  SOURCE_BROWSER         = YES
  INLINE_SOURCES         = YES
  GENERATE_LATEX         = NO
  MACRO_EXPANSION        = YES
  GENERATE_HTMLHELP      = YES
  #GENERATE_RTF           = YES
  HAVE_DOT               = YES
  UML_LOOK               = YES
  TEMPLATE_RELATIONS     = YES
  CALL_GRAPH             = YES
  CALLER_GRAPH           = YES
  DOT_GRAPH_MAX_NODES    = 200
  DOT_TRANSPARENT        = YES
  DOT_MULTI_TARGETS      = YES
  DISTRIBUTE_GROUP_DOC   = YES
  INCLUDE_FILE_PATTERNS  = *.c *.cpp *.h *.txt *.dox
  REFERENCES_RELATION    = YES
  编写自动生成帮助的脚本如下:
#! /bin/sh
  regsvr32 /root/.wine/drive_c/windows/system32/itss.dll
  regsvr32 /root/.wine/drive_c/windows/system32/itircl.dll
  rm -rf /usr/lib/wine/itss.dll.so
  if [ -f Doxyfile ]; then
      echo "file CMakeLists.txt is ok"
  else 
      ln -sf /bin/Doxyfile.linux Doxyfile
  fi
  if [ -n "$1" ]; then
      doxygen $1
  else
      doxygen
  fi
  if [ -L Doxyfile ]; then
      rm Doxyfile
  fi
  cd html
  export DISPLAY=:0.0
  export WINEDLLOVERRIDES="itss=n,b"
  wine /root/.wine/drive_c/Program\ Files/HTML\ Help\ Workshop/hhc.exe index.hhp >a.txt
  read -p "Press any key to continue." var
  exit 0
此配置文件能正确处理汉字,并且自动调用Graphviz生成各种图,自动打包hhp文件生成index.chm,最终的效果如下图所示:
更多推荐
 
 



所有评论(0)