如何编译源代码?
出版者:必威平台,2021年8月3日,使用编程语言创建一个源代码,也被称为程序,以使人类能够轻松地编码。这些程序需要转换为机器语言以执行它们(计算机可理解语言)。此翻译称为编译或解释。
虽然必须解析以任何编程语言编写的代码,但编译了一些代码,并且有些代码被解释。
用C、c++、Java等软件开发语言编写的代码进行编译。这些语言被设计用来创建可执行程序,所以用它们编写的代码需要编译。用Javascript、PHP、VBScript等web开发语言编写的代码进行解释。这些语言的目的是创建网络应用程序和在网页上显示数据,而不是创建可执行程序。所以用它们编写的代码需要被解释。
什么是编译器?
编译器是一种独特的程序,它处理用特定程序语言编写的语句,并将它们转换成计算机处理器使用的机器语言或“代码”。通常,程序员用C、c++或Java等语言编写语言语句,使用编辑器一次一行。创建的文件包含所谓的源语句。然后程序员运行适当的语言编译器,指定包含源语句的文件名。
编译器的角色
编译器采用程序代码(源代码)并将源代码转换为机器语言模块(称为对象文件)。另一个名为链接器的专用程序将此对象文件与其他先前编译的对象文件(特别运行时模块)组合以创建可执行文件。因此,从源代码到机器可执行代码的转换在程序运行之前发生。
以下是编译过程中涉及的两个步骤:
1.源代码由编译器转换为对象代码
编译器将源代码转换成目标代码,但它还没有准备好成为程序。在目标代码变成程序之前,它必须通过一个链接器。
2.对象代码通过链接器传递。
链接器是将各种模块和目标代码文件组合成可执行程序的程序。一旦数据通过链接器传递,就会产生一个可执行程序。
如何编译?
现在您已经对编译器是什么以及它是如何工作的有了一定的了解,现在让我们来了解如何编译源代码。
市场上有各种免费和开放源码的编译器,您可以根据编写代码所用的编程语言下载它们。编译器也依赖于操作系统,因此您必须相应地进行选择。
以下是一些主要的免费编译器
GCC(GNU编译集合)
GCC是几个主要编程语言的编译器的集成集合,在本文编写时,这些语言包括C、c++、Objective-C、Java、FORTRAN和Ada。GNU编译器都生成机器码,而不是通过另一个编译器翻译的高级语言代码。
CMake
CMake是使用编译器无关的方法进行自动化,测试,包装和安装软件的跨平台和开源软件。CMake不是构建系统,而是它生成另一个系统的构建文件。
javac
javac是Oracle公司的Java开发工具包中包含的主要Java编译器。javac工具读取用Java编程语言编写的类和接口定义,并将它们编译成字节码类文件。
Eclipse
Eclipse主要是用Java编写的,它的主要用途是开发Java应用程序,但它也可以通过插件使用其他编程语言创建应用程序,包括Ada, ABAP, C, c++, c#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP,
Turbo C
上世纪90年代,一种非常流行的C/ c++编辑器和编译器是一种用于用C语言编写程序的软件开发工具。作为一个IDE,它包括一个源代码编辑器、一个快速编译器、一个链接器和一个离线帮助文件供参考。
铿锵声
CLANG是C,C ++,Objective-C和Objective-C ++编程语言的编译器前端以及OpenMP,OpenCL,RenderScript,CUDA和HIP框架。它使用LLVM编译器基础架构作为其后端。
LLVM
LLVM编译器基础设施支持广泛的项目,从工业强度的编译器到专门的JIT应用程序,再到小型研究项目。LLVM是围绕一种独立于语言的中间表示(IR)设计的,它作为一种可移植的高级汇编语言,可以通过多次转换进行优化。
我希望您发现本文有趣,有助于了解和为您的开发项目选择合适的编译器。如果您发现它有用,请您对本文投票吗?