makefile学习之编译器报错问题

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

1、当使用makefile自动推导的功能时编译器报错
ccJS7JEh.s: Assembler messages:

ccJS7JEh.s:5: Error: invalid instruction suffix for `push'

ccJS7JEh.s:7: Error: invalid instruction suffix for `push'

\ccJS7JEh.s:14: Error: operand type mismatch for `call'

ccJS7JEh.s:39: Error: invalid instruction suffix for `push'

百度了很多方法但是都没有看到有相关的说明,看到有的地方说(使用的是chatgpt)是版本不兼容导致,于是我看了下自己电脑里配置的环境,

发现了有wingw和之前其它的gcc版本,将wingw删除从和gcc多余的版本去除后编译正常

我怀疑主要是mingw的原因,因为wingw是64的我的gcc都是x86的,后面我将gcc另一个版本回退也正常了,所以这里主要是mingw造成的

2、第二次修改:

可以通过修改c/c++的编译器来解决该问题:
在vs code扩展里面进入c/c++的配置,搜索Compiler Path配置如下图,后重启打开vscode即可,第一个方法虽然可以,但是会导致vscdoe无法识别c库代码,提示很多警告而且导致无法在vs上运行,当然如果你是嵌入式开发直接只用makefile的话也不影响好这里gcc的环境需要在环境变量中先配置好

makefile学习之编译器报错问题

makefile学习之编译器报错问题

 文章来源地址https://www.toymoban.com/news/detail-711478.html

makefile学习之编译器报错问题

 提供一个mingw版本:
https://blog.csdn.net/weixin_59243359/article/details/129219628

 

到了这里,关于makefile学习之编译器报错问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 【Linux】编译器gcc | make | Makefile | 模拟进度条 | gitee

    目录 1. 编译器 gcc 1.1 背景知识 1.2 gcc如何完成 2.1 Makefile背景 2.2 Makefile原理 2.3 Makefile常用符号 3. 模拟倒计时 4. 模拟进度条 5. 使用 git 命令行 5.1 安装 git 5.2 创建项目下载到本地 5.3 推送本地代码到远端仓库 1. 编译器 gcc 1.1 背景知识 预处理(进行宏替换) 编译(生成汇编) 汇编

    2024年03月12日
    浏览(54)
  • 【UNIX 环境编程】GCC 编译器 | Makefile 基础入门 | GDB 调试教学

    💭 写在前面: 本文将介绍如何使用 GCC 编译器编译,并详细介绍了 Makefile 的基本构造、创建Makefile 文件以及 Makefile 变量,以提高编译效率。此外,本文还将探讨GDB调试器的使用,包括调试前的准备、readelf 读取 ELF 文件信息、显示代码、断点、调试、监视、跳转等内容。 

    2024年02月03日
    浏览(55)
  • 解决VScode中:C/C++编译器错误导致头文件报错问题

    一、软件安装 VScode安装网址:https://code.visualstudio.com/ 进入网址,直接download即可。 VScode软件很好安装,下载完安装包之后。 双击安装包 选同意 选下一步 接下来将框中全部打√ 之后一路“下一步”即可。先不用启动。 二、C/C++编译器下载安装 编译器mingw-w64下载网址:http

    2024年02月02日
    浏览(43)
  • 【Linux】Linux编译器-gcc/g++ && Linux项目自动化构建工具-make/Makefile

    目录 Linux编译器-gcc/g++使用 1.背景知识  Linux中头文件的目录在 Linux 库 条件编译的典型应用 2.gcc如何完成 动态库 vs 静态库 debug release Linux项目自动化构建工具-make/Makefile 背景 用法 特殊符号  预处理(去注释,头文件展开,条件编译,宏替换) 编译(生成汇编) 汇编(生成

    2024年02月20日
    浏览(39)
  • Linux开发工具大全 - 软件包管理器yum | vim编辑器 | gcc/g++编译器 | 自动化构建工具Make/Makefile | gdb调试工具

    目录 Ⅰ.  Linux 软件包管理器 yum 一、yum 背景知识 二、yum 的基本使用 1、查看软件包 2、软件包名称构成 3、安装软件 4、卸载软件 Ⅱ.vim编辑器  一、认识vim 1、vim概念  2、模式及其切换  二、vim使用 1、vim的指令(重要)  命令模式 插入模式 底行模式 2、vim配置 Ⅲ.gcc/g++编

    2024年02月05日
    浏览(44)
  • 一个关于编译器优化选项问题的解决

    因为当前项目单片机容量不够使用,打算开启编译器优化,结果在使用KEIL编译器优化后,程序在发送Modbus数据时,程序直接跑飞了 最后发现是 局部变量指针 作为了DMA的内存地址参数,导致当DMA连续搬运数据时,实际那个局部变量已经被释放,导致DMA搬运数据的过程中出现错

    2024年04月09日
    浏览(43)
  • 最新keil5没有ARM CompilerV5或者安装编译器5.06后编译license报错

    踩坑了一中午,终于是搞好了,现在0报错,0警告,看着非常舒服。 事情原由: 现在网上绝大多数的STM32教程都使用的是老版本的MDK,因此编译器用的是老版本的,导致工程的启动文件添加后就报错。 但是肯定有追求完美的小伙伴就喜欢最新版,就偏不用老版本的MDK,就不卸

    2024年02月11日
    浏览(39)
  • Visual Studio编译器编译时出现“请选择有效启动项”问题的解决办法

    使用visual studio打开的是一个文件夹并不是一个项目,找不到启动项是正常的。 我们使用visual studio从现有代码创建项目即可。 上面如果默认创建Windows应用程序项目运行项目时就可能会出现 错误 LNK2019 无法解析的外部符号 _WinMain@16,函数 \\\"int __cdecl invoke_main(void)\\\" (?invoke_main@@

    2024年02月11日
    浏览(88)
  • 【linux】编译器使用

    目录 1. gcc ,g++ 编译器使用 a. 有关gcc的指令(g++同理) 2. .o 文件和库的链接方式 a. 链接方式 b. 动态库 和 静态库 优缺点对比 c. debug 版本 和 release 版本 注意: linux下自带gcc编译器,如果要安装g++编译器; sudo yum install -y gcc-g++ (普通用户) gcc + 文件名 得到可执行文件 gcc + 文

    2024年04月26日
    浏览(30)
  • 如何使用 C 编译器编译成 DLL 文件

    如果你想使用 C 编译器来编译成 DLL 文件,你可以使用下面的步骤: 首先,你需要安装一个 C 编译器,比如 GCC 或者 Microsoft Visual C++。 然后,你需要创建一个 C 源文件,并在文件中编写 DLL 所需的代码。 在命令行中进入到 C 源文件所在的目录。 编译 C 源文件,使用下面的命令

    2024年02月16日
    浏览(30)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包