gpt4 book ai didi

gcc - 原生树莓派编译问题

转载 作者:行者123 更新时间:2023-12-01 15:54:26 25 4
gpt4 key购买 nike

问题

我们正在尝试在树莓派上编译 spi_slave 代码。我们使用 native gcc 编译器,编译运行没有任何错误。

问题是当我尝试运行输出时:

/home/pi/spi_slave# ./build/output.elf段错误

/home/pi/spi_slave# ./build/kernel.imgbash: ./build/kernel.img: 无法执行二进制文件

试图从剑桥下载 arm-none-eabi 编译器,但它无法运行:/home/pi/spi_slave# ../arm-2008q3/bin/arm-none-eabi-gccbash: ../arm-2008q3/bin/arm-none-eabi-gcc: 无法执行二进制文件

源代码

我们尝试编译的代码是:http://tylernichols.me/wp-content/uploads/2012/11/raspberry_pi_bare_metal_spi_slave.zip

我们所做的唯一更改是在 makefile 中,在 ARMGNU var 前面添加了一个#

#ARMGNU = arm-none-eabi

环境

# uname -a
Linux raspberrypi 3.6.11+ #371 PREEMPT Thu Feb 7 16:31:35 GMT 2013 armv6l GNU/Linux

我做错了什么?

我们已经尝试在 google 和 stackoverflow 上寻找答案几个小时了,但没有成功。 :/

最佳答案

arm-none-eabi 是一个非 linux 编译器。它适用于裸机 应用程序。不同之处在于 C 库。但是,gccC 库紧密链接以进行正常编译。

然后是代码。它不是为 Linux 编写的。它是为裸机 应用程序编写的。您需要在没有 Linux 的情况下从 Raspberry-Pi 引导加载程序(berryboot?)加载并运行代码。

您可以使用 ARM Linux 编译器为裸机 应用程序创建代码。但是,您可能更容易找到针对 Raspberry Pi 的 newlib 编译器。您可以在网络上搜索尝试自己构建一个。

参见:How to build gcc for Raspberry PiBare-metal gcc .

关于gcc - 原生树莓派编译问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15211843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com