最終更新日: 2016-10-05 水 22:14
ホーム | 文書トップ | 目次

GNU GLOBAL(gtags) by Bcc Compile

Table of Contents

注意

  • 下記の内容は参考の為に残している。
  • 2007年5月現在では、Jason Hood氏が提供しているWin32用バイナリを使用することをお奨めする。
  • 2004年11月現在、Boland C++ でのコンパイルには非対応となっている。
  • 2003年9月現在では、下記の内容に関わらず、cygwinでコンパイルしたものを使用することをお勧めする。
    • このページには、Boland C++ Compilerでコンパイルして使用する方法を載せているが、このバイナリは動作不具合がある。
    • よって現在私は、cygwinで、./configure;make;make install したものを使用している。こちらは上記のような不具合がない。

install(for win2000&Meadow)

○globalのバイナリ

btreeop.exe
gctags.exe
global.exe
gtags.exe
htags
htags.bat

に加え、

http://www.edv.agrar.tu-muenchen.de/~syring/win32/UnxUtils.html
のツールにある、
sed.exe
sort.exe
をコピーする。(これがないとglobalは使えない)

を任意のディレクトリに置く。ここでは、

C:\user\global\bin

とする。

また、Meadowから使うためには、上記のバイナリを置くディレクトリを、
windowsの環境変数に設定する必要がある。

!!!また、このとき、必ず、C:\WINNT\system32 よりも、前にPATHを設定する必要がある。!!!
(windows標準のsort.exeが動くとglobalは使えない!!)


○ソースファイル内の、
global-4.5\gtags.elをMeadowのsite-lisp ディレクトリなどにコピー。


.emacsで、以下のように設定をする。


(autoload 'gtags-mode "gtags" "" t)
(setq gtags-mode-hook
      '(lambda ()
         (local-set-key "\M-t" 'gtags-find-tag)   ;Esc tで関数の定義元へ
         (local-set-key "\M-r" 'gtags-find-rtag)  ;Esc rで関数の参照先へ
         (local-set-key "\M-s" 'gtags-find-symbol);Esc sで変数の定義元/参照先へ
         (local-set-key "\C-t" 'gtags-pop-stack)  ;Ctrl-tで前のバッファに戻る
         ))

(add-hook 'c-mode-common-hook
          '(lambda()
             (gtags-mode 1) ;Cのソースを開いたら自動的にgtags-modeをon
             ))


使い方(for win2000&Meadow)

ソースディレクトリのトップで、

> gtags -v

で、インデックスを作成する。
GPATH
GRTAGS
GSYMS
GTAGS
が生成される。


任意のシンボル上で、

M-t(ESC-t)で関数の定義元へ
M-r(ESC-r)で関数の参照先へ
M-s(ESC-s)で変数の定義元/参照先へ
Ctrl-tで前のバッファに戻る

のように使う。

○このインデックスから、HTMLを生成するhtagsというものもある

> htags.bat -v -s

(htagsでは実行できない。必ず、htags.bat と実行する)
で、HTMLのリファレンスツリーを作成する!!
HTMLディレクトリが作成される。

が、htagsにバグがあるため、そのまま使おうとすると、(おそらく、windows用固有のもの
だろう)

"GTAGS is not the latest one. Please remake it."

というエラーが出てしまう。これを回避するためには、

globalのバイナリのディレクトリのhtagsの853行目を以下のようにコメントアウトする。

# &'error("GTAGS is not the latest one. Please remake it.");

コンパイル方法(win2000+BorlandC++)

新しいversionをコンパイルするときのために。作業履歴。
4.5を使うなら、上記のバイナリを使えばOK

global4.5 を win2000 + bolandC++ Compiler でコンパイルする。

cygwin環境ではgcc,makeなどが入っていれば楽にコンパイルできるが、
Meadowから、gtags.elで使おうとする場合にまともに使えないので、
BCCでコンパイルしたバイナリを使う方がよさそう。

基本的には、global4.5のドキュメントどおりやればよい。

コンパイル方法は、


○準備1:ActivePerlを適当なディレクトリにinstallする。
  http://www.activestate.com/
  ※cygwinを入れている人は、cygwin付属のperlはuninstallした方がいいかも。

○準備2:Borland C++ Compiler 5.5 (free)をインストール
  http://www.borland.co.jp/cppbuilder/freecompiler/

  任意のディレクトリにinstall
  ここでは、C:\user\borland\bcc55 にinstallする。
  C:\user\borland\bcc55\readme.txt通りやればよいが、
  一応解説。

  ・ C:\user\borland\bcc55\bin をWindowsの環境変数PATHに登録
     →PATHを有効にするために、再ログオンもしくは再起動
  ・ bcc32.cfgを作成。内容は下記2行。
     -I"c:\user\Borland\Bcc55\include"
     -L"c:\user\Borland\Bcc55\lib"
  ・ ilink32.cfgを作成。内容は下記2行。
     -L"c:\user\Borland\Bcc55\lib"

○global-latest.tar.gzを任意のディレクトリで

  > tar xvzf global-latest.tar.gz

  で解凍。

  ○global-4.5\w32ディレクトリの内容を、global-4.5 下に上書きする。

    global-4.5\makefile.inc を編集。

    WILDOBJ= C:\user\Borland\BCC55\Lib\wildargs.obj

  installするディレクトリを指定する。このとき、指定したディレクトリは作成しておく必要がある。
    BINDIR = C:\user\global\bin
    MANDIR = C:\user\global\man\man1


○make & make install

  コマンドプロンプトから行う。
  cygwin環境で、cygwinのmakeが動くとコンパイルできない。

  global-4.5下で、

    > make.bat
    (警告がかなり出るが、エラーが出なければOK)

    > make.bat install

  で終了。
  上で指定した、

    BINDIR
    MANDIR

  にコピーされる。
ホーム | 文書トップ | 目次
Created by Emacs 27.1 (Org mode 9.3)