C/C++ 常见编译器说明

这篇具有很好参考价值的文章主要介绍了C/C++ 常见编译器说明。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

window下常用的编译器

  1. window下并不提供原生的类似gcc/g++的类unix系统下的C/C++编译器。常用的是 MSVC(Microsoft Visual C/C++)编译器,在我们安装完visual studio 2019后,会在 D:\software\visual_studio_2019\IDE\VC\Tools\MSVC\14.29.30133\bin目录下看到Hostx64和Hostx86这两个目录。Hostx64目录下有x64和x86两个目录。Hostx86目录下也有x64和x86两个目录。这里的Hostx64和Hostx86分别表示编译器软件的为啥,Hostx64下的是64位的编译器,Hostx86下的是32位的编译器。其下的x64和x86又分别代码 build的应用程序 所运行的目标平台。
    2.下面以D:\software\visual_studio_2019\IDE\VC\Tools\MSVC\14.29.30133\bin\Hostx64\x64目录进行详细讲解:
    其下 最重要的两个可执行文件是 cl.exe和link.exe (即MSVC编译器工具链主要由cl.exe与link.exe构成)
    1.cl.exe用于控制在 Microsoft C/C++的编译器和链接器
    2.link.exe 将通用对象文件格式 (COFF) 对象文件和库链接起来,以创建可执行 (.exe) 文件或 动态链接库 (DLL)
    3.用户只需要调用cl.exe,即可完成编译-链接全过程。

如何获取MSVC

一般来说,获取MSVC要通过Microsoft Visual Studio来实现。对于一般的应用场景来说,我们不需要下载完整的IDE而是只需要下载单个组件下的MSVC C++ 生成工具,以及Windows 10 SDK(注意:如果主机系统是Windows 11则必须用Windows 11 SDK)即可。(MSVC C++生成工具包含了全部编译链接工具链以及大部分函数库与头文件;Windows 10 SDK只是提供其它的一些必要库文件与头文件)
C/C++ 常见编译器说明
我们想要在cmd下执行cl.exe命令,还需要配置环境变量。而使用Visual Studio 执行编译时,由IDE工具调用对应的cl.exe来编译链接,不需要我们手动干预。

MinGW

MinGW即Minimalist GNU For Windows,即为Windows系统开发的极简版的GNU, 区分32位和64位,实际上 MinGW 并不是一个 C/C++ 编译器,而是一套 GNU 工具集合。(除了包括GCC即GNU编译器集合,还包括其他的功能)里面包含gcc和g++的类Unix系统上的编译器。开发 MinGW 是为了那些不喜欢工作在 Linux(FreeBSD) 操作系统而留在 Windows 的人提供一套符合 GNU 的 GNU 工作环境。让人们在Windows系统下也可以使用gcc和g++的命令。

Linux和MaxOS下的编译器

在讲解Linux下的编译器时,先讲一个GNU的历史,GNU全称是 GNU’s Not Unix。即GNU不是Unix,我们都知道Unix是操作系统,但是GNU也是操作系统,模仿unix开发的但是它是开放自由的。但是至今也没有自己的真正内核,然而不是完整的操作系统。在实际使用上,多半使用Linux内核、FreeBSD等替代方案,作为系统核心,其中主要的操作系统是Linux的发行版。Linux操作系统包涵了Linux内核与其他自由软件项目中的GNU组件和软件,可以被称为GNU/Linux(见GNU/Linux命名争议)。
下面讲下GCC,其全称为GNU Compiler Collection,即GNU编译器集合。即GCC是GNU中的一部分。
gcc是GCC中的GNU C Compiler(C编译器);
g++是GCC中的GNU C++ Compiler(C++编译器);
事实上,虽然gcc和g++叫做xxx编译器,但它们只是一种驱动器,根据要编译的文件类型去调用对应的GNU编译器。

gcc和g++的区别

1.gcc可以编译.c文件和.cpp文件,并且gcc会区分它们,分别当作c和cpp文件编译;
2.g++也可以编译.c文件和.cpp文件,但是g++不区分它们,都当做cpp文件编译。
3.编译时,gcc和g++都可以使用,因为编译阶段时g++会调用gcc进行编译;
4.链接时,g++可以使用,gcc需要添加"-lstdc++"才可以使用,因为gcc不能自动和C++库链接,所以一般使用g++进行链接;
5.gcc在编译cpp文件时、g++在编译c文件和cpp文件时,gcc和g++调用的都是cpp文件的编译器,且会加入一些额外的宏定义,宏定义文章来源地址https://www.toymoban.com/news/detail-493309.html

#define __GXX_WEAK__ 1
#define __cplusplus 1
#define __DEPRECATED 1
#define __GNUG__ 4
#define __EXCEPTIONS 1
#define __private_extern__ extern

到了这里,关于C/C++ 常见编译器说明的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【开发环境】Windows下搭建TVM编译器

    关于搭建TVM编译器的官方文档:Install from Source — tvm 0.14.dev0 documentation (apache.org) 1. 安装Anaconda 首先我们需要安装Anaconda,因为其中包含着我们所需要的各类依赖: 进入Anaconda官网https://www.anaconda.com/products/distribution,下载Windows版本,下载完成后运行.exe, 可以更改安装路径(

    2024年02月15日
    浏览(53)
  • Windows下QT Creator安装MinGW 32bit编译器

      注:本作者是基于FFmpeg开发需要,故在Windows下QT Creator中安装MinGW 32bit编译器!其它型号编译器参照此文章基本可以实现! 1、下载链接 链接: 2、下载后的文件(Qt路径下包含:5.12.0文件和Tools文件): 1、将:Qt/Tools/mingw730_32拷贝到QT Creator安装路径下的Tools文件下 2、将:

    2024年02月14日
    浏览(65)
  • Windows的cmd运行编译器(cmd运行c/c++、python等)

    目录 一、cmd.exe 二、cmd.exe运行编译器gcc.exe/g++.exe执行C/C++程序代码 三、gcc.exe与g++.exe的区别及其使用注意事项 1、文件格式问题 2、标准库问题 3、语法规范问题 4、extern \\\"C\\\"声明问题与重载函数(overloaded function) 四、cmd运行python解释器执行python程序代码       前面我们已讲述了

    2024年02月04日
    浏览(58)
  • 如何在Windows、Mac和Linux操作系统上安装Protocol Buffers(protobuf)编译器

    🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 🌊 《IDEA开发秘籍专栏》学会IDEA常用操作,工作效率翻倍~💐 🌊 《100天精通Golang(基础入门篇)》学会Golang语言

    2024年02月11日
    浏览(73)
  • windows下使用microsoft、intel、gnu不同编译器利用cmake和vscode对c++和fortran程序进行编译和调试

    由于编译器支持特性、编译后程序运行速度、安装使用便捷程度等的不同,我们往往会安装多种不同的编译器。对于c++语言主要的编译器有:microsoft、intel、gnu等,对于fortran语言则更多,包括gnu、intel、pgi等等。不同的编译器在一个系统下,往往需要利用一些手段进行区分,

    2024年02月05日
    浏览(59)
  • MinGW-w64的安装详细步骤(c/c++的编译器gcc、g++的windows版,win10、win11真实可用)

    MinGW(Minimalist GNU for Windows) 是一个用于 Windows 平台的开发工具集,它提供了一组 GNU 工具和库,可以用于编译和构建本地的 Windows 应用程序。 MinGW 的目标是在 Windows 环境下提供类似于 Unix/Linux 环境下的开发工具,使开发者能够轻松地在 Windows 上编写和编译 C、C++ 等程序。

    2024年02月13日
    浏览(82)
  • python在线编译器搭建,python在线编译器源码

    本篇文章给大家谈谈python在线编译器搭建,以及python在线编译器源码,希望对各位有所帮助,不要忘了收藏本站喔。 1. PyCharm集成开发环境 2. PyCharm的下载与安装 3. Pycharm的使用 3.1 创建Python项目 3.2 创建子目录 3.3 创建Python文件 3.4 切换解释器 3.5 常用快捷键 4. Pycharm常用配置

    2024年03月25日
    浏览(62)
  • 编译器(Compiler)及C/C++编译器安装(c+安装)

    目录 一、常用编程语言的编译器(compiler) 概述 二、GCC、MinGW、MinGW-w64 、TDM-GCC、Cygwin、MSYS、MSYS2的区别 三、MinGW-w64编译器套件下载及安装 四、MinGW-w64安装后,windows环境变量配置(设置) 五、编译器的运行及其与开发环境的关系、编译器的来源        机器语言是一种计算机指

    2024年02月07日
    浏览(68)
  • 探索Kotlin K2编译器和Java编译器的功能和能力

    文章首发地址 Kotlin K2编译器是Kotlin语言的编译器,负责将Kotlin源代码转换为Java字节码或者其他目标平台的代码。K2编译器是Kotlin语言的核心组件之一,它的主要功能是将Kotlin代码编译为可在JVM上运行的字节码。 编译过程: Kotlin K2编译器将Kotlin源代码作为输入,并经过词法分

    2024年02月11日
    浏览(47)
  • 为 Microsoft C++ 配置 VS Code在本教程中,您将配置 Visual Studio Code 以在 Windows 上使用 Microsoft Visual C++ 编译器和调试器

    在本教程中,您将配置 Visual Studio Code 以在 Windows 上使用 Microsoft Visual C++ 编译器和调试器。 配置完 VS Code 后,你将在 VS Code 中编译和调试一个简单的 Hello World 程序。本教程不教您有关 Microsoft C++ 工具集或 C++ 语言的详细信息。对于这些主题,网上有很多很好的资源。 如果您

    2024年02月10日
    浏览(75)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包