该问题的出现是链接文件导致的,是不同的gcc交叉编译器支持的链接文件不同造成的,有几种方法可以解决这个问题。

方法一:更换arm-none-eabi-gcc的版本,这个一般是新的gcc编译器才会抱着错误,把gcc交叉编译器版本回退即可。

方法二:直接修改link文件。就是在ld 文件加入 _exit = .; 具体代码如下:

  

方法三:网上还有一种方法,就是添加gcc的编译选项,这个我没有用成功,不过,应该也是可以的,就是在gcc中添加如下选项:

arm-none-eabi-gcc –specs=nosys.specs $(OTHER_LINK_OPTIONS) 有追求的同学可以试一下。

arm-none-eabi-gcc编译报错:exit.c:(.text.exit+0x16): undefined reference to `_exit'的更多相关文章

  1. Ubuntu gcc编译报错:format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 2 has type ‘__time_t’ [-Wformat=]

    平时用的都是Centos系统,今天偶然在Ubuntu下编译了一次代码,发现报错了: 源码: #include <stdio.h> #include <sys/time.h> # ...

  2. MAC 下用GCC编译报错:“Undefined symbols for architecture x86_64: ”

    解决方法: 因为GCC编译的时候没有链接C++ standard library, 因此在编译的时候要加入符号 -lstdc++ 使用命令: gcc myprog.c -o myprog -lstdc ...

  3. 对arm指令集的疑惑,静态库运行,编译报错等问题

    转载自http://www.jianshu.com/p/4a70aa03a4ea?utm_campaign=hugo&utm_medium=reader_share&utm_conte ...

  4. redis编译报错总结

    redis编译报错总结: 1.不能编译没有GCC 编译工具安装报错:问题1:make时可能会报如下错误cc -c -std=c99 -pedantic -O2 -Wall -W   -g -rdyna ...

  5. openWRT编译报错集锦

    需网络稳定,可正常上梯子. /*ubuntu18编译报错:*/ autoreconf: running: /home/jack/openwrt-sdk/staging_dir/host/bin/aut ...

  6. clang编译代码报错:`_start': (.text+0x24): undefined reference to `main'

    1. 说明 使用clang++10.1编译报错: /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/crt1 ...

  7. caffe编译报错解决

    添加ssd中的一些层之后,编译报错: ../lib/libcaffe.so.1.0.0-rc5:对‘boost::match_results<__gnu_cxx::__normal_iterat ...

  8. RK3399 Android 7.1 删除repo后编译报错

    CPU:RK3399 系统:Android 7.1 瑞芯微使用的是 repo 来进行代码管理,但我们需要用 git 来管理,所以就删除了 repo,但是编译就报错,如下:Server is alrea ...

  9. CentOS7安装mysql8.0编译报错集合

    以下都是我安装mysql8.0遇到的一些报错和解决方法 1.does not appear to contain CMakeLists.txt. 原因:mysql下载的源码包不对 解决方法:下载正确的 ...

随机推荐

  1. 华为AR2811配置脚本

    华为AR28-11基本配置 # sysname Quidway # super password level simple admin --设置super用户password,级别,密码显示方式(明文 ...

  2. io.lettuce.core.RedisCommandTimeoutException: Command timed out

    遇到的情况是 redis timeout时间设置过短(我设置成0了),默认多少也查不到

  3. FreeBSD 与中文

    $ setenv LC_ALL en_US.UTF- 然后用 locale 检查 en_US 不是重点,重点是 UTF-8 . 然后用 putty,原因是默认终端又没有中文字体...然后就能输入输出中 ...

  4. SpringBoot中对于异常处理的提供的五种处理方式

    1.自定义错误页面 SpringBoot 默认的处理异常机制:SpringBoot默认的已经提供了一套处理异常的机制.一旦程序中出现了异常,SpringBoot会向/error的url发送请求.在Sp ...

  5. pytest简介

    pytest有哪些优点? 允许直接使用assert进行断言,而不需要使用self.assert*; 可以自动寻找单测文件.类和函数; Modular fixtures可以用于管理小型或参数化的测试信息 ...

  6. Ducci 队列 -基础queue,set

    https://vjudge.net/contest/185301#problem/B 用队列记录,set的不重复性来判断 //#include<bits/stdc++.h> #inclu ...

  7. Network POJ - 3417(LCA+dfs)

    Yixght is a manager of the company called SzqNetwork(SN). Now she's very worried because she has jus ...

  8. kvm虚拟机存储管理

    一.kvm存储虚拟化介绍: 1.KVM 的存储虚拟化是通过存储池(Storage Pool)和卷Volume)来管理的. 2.Storage Pool 是宿主机上可以看到的一片存储空间,可以是多种型 ...

  9. Android-Animation (1) 视图动画

    Android-Animation (1) 视图动画 学习自: Keegan小钢 :http://keeganlee.me/post/android/20151003 Carson_Ho : http ...

  10. hcna(华为)_Telnet篇

    Telnet提供了一个交互式操作界面,允许终端远程登录到任何可以充当 Telnet服务器的设备.Telnet用户可以像通过Console口本地登录一样对 设备进行操作.远端Telnet服务器和终端之间 ...