LXR 是基於 Web 的原始碼交叉索引工具,閱讀程式碼極便利。以 pidgin-2.4.1 為例記錄配置過程。
Gentoo 下 emerge lxr。注意:perl 與 libperl 需啟用 ithreads USE flag。另需 apache、mod_perl、mysql。索引工具用 glimpse 則 emerge glimpse,用 swish-e 則 USE=freetext emerge lxr。
於 /data/codes/other/pidgin 建立 2.4.1 目錄存放解壓原始碼,建立 versions 檔寫入 2.4.1。
mysql -u root < /usr/share/webapps/lxr/0.9.5/sqlscripts/mysql/0.9.5_create.sql
建立 lxr 資料庫,將 /var/lib/mysql/lxr 重命名為 pidgin。新增專案同理操作。
emerge --config =www-servers/apache-x.x.x # 產生預設網頁目錄 # 編輯 /etc/conf.d/apache,APACHE2_OPTS 加入 "-D PERL" # 重啟 apache cp -pr /usr/share/webapps/lxr/0.9.5/htdocs /var/www/localhost/htdocs/pidgin
關鍵在配置 lxr.conf,可參考上傳的 pidgin 範例。
cd /var/www/localhost/htdocs/pidgin ln -snf /data/codes/other/pidgin/lxr.conf ./genxref --url=https://localhost/pidgin
操作 MySQL 時會報錯:lxr_releases 表的 release 欄位與 MySQL 關鍵字衝突,需修改 /usr/lib/perl5/vendor_perl/5.8.8/LXR/Index/Mysql.pm 中 SQL 語句,將 release 加反引號變為 `release`。完成後即可瀏覽。