在Ubuntu上使用bjam產生執行檔的問題 - Linux

Table of Contents

小弟最近在使用bjam企圖產生某個C code的執行檔

但是出現了以下兩個錯誤訊息:

/home/steven7337/tetra/tt_token.hpp:174: error: declaration of ‘const
tetra::symbol<char_type>* tetra::CTT_Token<char_type>::symbol() const’

/home/steven7337/tetra/tt_symbolentry.hpp:47: error: changes meaning of ‘
symbol’ from ‘struct tetra::symbol<char_type>’


小弟檢視原始碼的結果,發現在tt_token.hpp中有一個叫做symbol的函式宣告

const symbol_type* symbol() const { return m_pSymbol; }

然後在tt_symbolentry裡面有一個structure宣告,也叫做symbol

struct symbol
{

symbol()

: symno(0),

isliteral(false),

name(""),

text(""),

.....

(下略)

}


似乎gcc把這兩個東西搞混了?

因為小弟跟原始碼的作者聯繫過,

他說要改名字的話工程過於浩大,牽涉檔案太多,

而且重點是,他那邊的gcc可以辨別出來,可以過....= =b

他的gcc版本是4.1.2。

而小弟試過gcc4.1.2, 4.4.1,和4.2,通通出現一樣的錯誤訊息。

請問有版友遇過類似的情況嗎?或者是知道那個版本的gcc可以辨別出來?

感激不盡....

--

All Comments