网页代码阅读工具

GNU GLOBAL 是一个源代码标记系统, 能够很方面的进行代码阅读和代码索引. 在你的源代码中,你可以找到不同的对象并能够很轻松的移动它们, 如函数、宏、结构、类等. 这对大型项目非常有用, 特别是那种包含许多子目录, 许多 #ifdef 和很多 main( ) 函数的项目.

1、编译安装global

通过如下网址下载源码包

https://www.gnu.org/software/global/download.html

安装编译所需的gcc,ncurses-devel 包等。然后解压tar.gz源码包,解压后,进入源码目录,执行如下进行编译。

./configure --with-sqlite3 # gtags可以使用Sqlite3作为数据库, 在编译时需要加这个参数
make
make install

2、创建网页文件

下载要阅读的代码,在代码目录下,执行gtags –v生成tag文件,如果之前已经生成过,可执行gtags -iv实现增量更新。执行htags命令,默认会在当前目录下生成HTML目录,该目录下存放HTML文件以及cgi-bin程序。

htags -DfFnva -m "指定main函数的名称" -t '这里填入你想要的主页title'
如:
htags -DfFnva -m "main" -t 'kernel-4.19'

3、搭建服务器

yum 安装httpd,然后配置etc/httpd/conf/具体内容配置可以参考如下链接:

https://blog.csdn.net/lcl_xiaowugui/article/details/78607093

httpd的主配置文件为/etc/httpd/conf/httpd.conf,子目录配置文件为/etc/httpd/conf.d,我们现在在这个目录下面增加一个名为*.conf的文件,告诉httpd,html和cgi-bin对应的目录。对于配置文件我们只在conf.d目录下增加了如下内容的kernel.conf.

<VirtualHost *:80>
    DocumentRoot /mnt/linux-4.19.2/HTML
    ServerName 9.xx.xx.xx:80
    <Directory "/mnt/linux-4.19.2/HTML">
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>
    ScriptAlias /cgi-bin/ "/mnt/linux-4.19.2/HTML/cgi-bin/"
    <Directory "/mnt/linux-4.19.2/HTML/cgi-bin">
        AllowOverride None
        Options None
        Require all granted
    </Directory>
</VirtualHost>

配置好后重启httpd服务,systemctl restart httpd。

在浏览器中输入ip:端口号,就可以直接访问界面了,但是会出现403错误,告知用户无权限访问。我们把/mnt/linux-4.19.2/HTML这个目录的上级目录以及这个目录下面的文件权限都改为other可读就可以了。我改成了755权限,可以访问。

另外也需要关闭防火墙和selinux。关闭防火墙: systemctl stop firewalld, 关闭selinux:http://blog.51cto.com/itchenyi/1032696

 

posted @ 2018-11-26 11:48  行木辛  阅读(902)  评论(0编辑  收藏  举报