0

我知道它是以某種方式建立連接,以便編譯器在envokes將源代碼連接到需要的任何庫時。設置編譯路徑時發生了什麼?

但是,爲了自信地編譯代碼,在更技術層面發生了什麼,或者更好地提出了我需要知道的內容。

我正在使用C++和MinGW,並且已經開始研究構建文件和Sublime Text 2的東西(迄今爲止主要學習unix或Java + eclipse)。但是我不明白什麼是向你的路徑添加編譯器會爲你做什麼?

我是否需要爲每個要編譯的文件夾添加它?或者它是系統範圍?我真的第一次學習這些東西,我們從未展示如何設置開發環境,甚至在其他系統上部署代碼。

回答

1

你大概的意思是包括編譯器路徑和庫路徑:

  • 包括路徑:編譯器將尋找頭;和
  • 庫路徑:其中由編譯器調用的鏈接程序將查找二進制庫來完成構建項目。

如果是這種情況,請查看here以獲得溫和的解釋。 基本上,發生的情況是編譯器在某些地方查找操作系統和系統安裝的其他庫所定義的符號。 除了這些路徑之外,您還需要告訴編譯器在哪裏找到您自己項目中定義的符號。

您可能還意味着與安裝編譯器本身或配置編輯器使用它有關的內容。 在這種情況下,發生的情況是您需要告訴構建系統在哪裏找到編譯器的可執行文件。

基本上,可能發生的情況是,編輯器想知道編譯器的位置,以便它能夠提供對代碼的實時反饋。將編譯器添加到系統路徑通常會(但並非總是)解決您的問題。

詳細信息: C++構建是一個相當複雜的工具鏈,涉及確定依賴關係,預處理,編譯和鏈接。有一些工具可以自動化這個工具鏈,而這些工具反過來被包裝到現代IDE的功能中,比如Eclipse,Visual C++或Sublime Text 2.許多人需要告訴編輯器在哪裏可以找到它用來提供給你的工具與那些服務。