2015-09-15 106 views

回答

1

我想,编译指的是编译器作为一个整体,而编译器驱动程序对应驱动编译流水线逻辑。驱动程序的任务是为各种文件调用正确的工具(例如,clang针对C/C++源调用cc,针对对象文件的ld等),并为它们设置适当的标志。

1

在llvm中,我们总是使用clang。我将用clang作为例子来解释你的问题。

当您向命令行输入“clang”时,它是编译器驱动程序。编译器驱动程序有很多选项,这些选项将决定将调用哪个编译器组件。例如:clang -cc1是前端,clang是驱动程序。驱动程序使用适合您的系统的选项调用前端。

所以,我认为编译器驱动程序驱动编译器组件,使它们一起工作。