2016-07-05 24 views
0

這是gtags版本5.7.1,與Ubuntu 14.04一起打包的版本。這是gtags的舊版本。`make gtags`在Linux內核上生成空數據庫

Linux內核有一個gtags製作的目標,這ultimately results in the commandall_target_sources | gtags -i -f -

  • -i告訴gtags做增量更新
  • -f告訴gtags從讀取源文件的列表(以檢查符號)以下文件。 -f -表示從標準輸入讀取列表。
  • all_target_sourcesfunction,它輸出所有相關的.c和.h文件的列表。

當運行make gtags,將得到的標籤表是空的(GTAGS,GPATH等等都具有16個字節的大小這似乎只是一個報頭)。

如果我修改script that generates tags,以便它使用下列內容:

all_target_sources > sources.list 
gtags -iv -f sources.list 

我得到相同的結果。增加的-v給我這樣的輸出:

checking /home/me/sources/linux/GTAGS 
GTAGS found at '/home/me/sources/linux/GTAGS'. 
[Tue Jul 05 10:21:49 BST 2016] Gtags started. 
Using default configuration. 
Tag found in '/home/me/sources/linux'. 
Incremental update. 
[Tue Jul 05 10:21:49 BST 2016] Updating 'GTAGS'. 
[Tue Jul 05 10:21:49 BST 2016] Updating 'GRTAGS'. 
[Tue Jul 05 10:21:49 BST 2016] Updating 'GSYMS'. 
Global databases have been modified. 
[Tue Jul 05 10:21:49 BST 2016] Done. 

但是,當我再從我的shell(使用腳本遺留的sources.list)運行gtags -iv -f sources.list直接,我發現一個適當的標籤表建立。

我已經從script內部傾倒了環境,並且在我的即時環境中進行了區分,沒有任何區別,這些區別應該會明顯影響gtags

有沒有人知道任何可能導致此問題的gtags行爲?


[元]很抱歉,沒有gtagsgnu-global標籤,我沒有代表來創建它。

回答

0

我還沒有找到問題的根源,但從源安裝latest version of GNU Global後,問題就消失了。所以我認爲這可能是gtags舊版本中的一個錯誤。