首頁 >後端開發 >C++ >為什麼使用 GCC 編譯'info.c”需要'-lstdc”標誌?

為什麼使用 GCC 編譯'info.c”需要'-lstdc”標誌?

Patricia Arquette
Patricia Arquette原創
2024-11-29 19:25:21583瀏覽

Why Does Compiling `info.c` with GCC Require the `-lstdc  ` Flag?

使用GCC 編譯C 程式

雖然GCC 能夠編譯C 程式碼,但嘗試編譯「info.c」時遇到編譯器錯誤「是由於連結器錯誤造成的。這些錯誤源自於缺少與標準 C庫的連結。 ,它執行以下操作:

根據檔案副檔名選擇適當的後端編譯器,類似於GCC。 c 檔案編譯為C 形成對比。 >
gcc info.C -lstdc++

以下摘錄自 Rup 的評論,簡潔地解釋了差異:

    「GCC 將根據檔案副檔名選擇正確的後端編譯器。但是,預設情況下它僅將二進位檔案連結到標準 C 和 GCC 幫助程式庫。相較之下,g 在其連結步驟中包含 libstdc預設情況下,無論輸入語言為何。 ”

以上是為什麼使用 GCC 編譯'info.c”需要'-lstdc”標誌?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn