簡體   English   中英

Eclipse CDT無法解析C ++項目中的外部實體

[英]Eclipse cdt couldn't resolve extern entities in c++ project

我的eclipse c ++項目問題是eclipse無法解析extern函數,名稱空間,變量等...請看截圖。

在此處輸入圖片說明

大一點

因此,例如jni類型的jint不能通過eclipse解析,但是,正如您所見, jni.h已包含並解析(我可以CNTRL +單擊它並查看其內容),我已經設置了所有需要的include路徑,因此,所有文件都按預期的方式包含在內,但是eclipse不能解析其中的實體。

問題可能出在哪里?

PS。 我是使用eclipse進行c ++開發的新手,所以我可能會錯過一些東西,請幫助我,我將不勝感激。

謝謝。

您還需要告訴Eclipse您的JNI庫在哪里。

如果您從未這樣做過, 請參閱此Wiki條目 有關鏈接的部分包含圖片,箭頭和文本,它們將引導您完成整個過程。

一些一般性建議:學習區分編譯器錯誤和鏈接器錯誤。 如果是編譯器錯誤,則可以查找缺少的包含文件等。當它是鏈接器錯誤時,意味着它已編譯並發現所有標頭都很好,但是當它尋找實際對象以鏈接到它時找不到它。 這通常意味着您要解決庫路徑問題。

最后的警告是,我已經看到Eclipse本身會全部更改工具鏈設置,如果您想看到我現在始終避免使用的一個設置面板,則將其寫在博客條目中

正如krasilich所說的那樣,當鏈接器遇到一個模棱兩可的變量並弄亂了鏈接時,就會發生這種情況。

通過重新編輯變量的標題“包含extern聲明的標題”,我臨時解決了此問題,再次清理並構建,鏈接器將能夠輕松發現並鏈接它。 但是永久解決方案是通過在C / C ++常規>路徑和符號>包含中添加包含頭文件的工作空間/文件夾路徑。

可能的解釋取決於編譯器和鏈接器。 我試圖做到這一點,但沒有問題。 當我使用像GHS這樣的私有編譯器時,此問題與特定變量有關。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM