2015-09-15 210 views

回答

1

我想,編譯指的是編譯器作爲一個整體,而編譯器驅動程序對應驅動編譯流水線邏輯。驅動程序的任務是爲各種文件調用正確的工具(例如,clang針對C/C++源調用cc,針對對象文件的ld等),併爲它們設置適當的標誌。

1

在llvm中,我們總是使用clang。我將用clang作爲例子來解釋你的問題。

當您向命令行輸入「clang」時,它是編譯器驅動程序。編譯器驅動程序有很多選項,這些選項將決定將調用哪個編譯器組件。例如:clang -cc1是前端,clang是驅動程序。驅動程序使用適合您的系統的選項調用前端。

所以,我認爲編譯器驅動程序驅動編譯器組件,使它們一起工作。