代码之家  ›  专栏  ›  技术社区  ›  stamp

使用本地树莓派编译问题

  •  3
  • stamp  · 技术社区  · 13 年前

    这个问题

    我们正试图在树莓pi上编译spi_slave代码。我们使用了本机的gcc编译器,编译运行时没有任何错误。

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

    /home/pi/spi_slave编号/构建/输出.elf 分段故障

    /home/pi/spi_slave编号/构建/kernel.img 猛击:/build/kernel.img:无法执行二进制文件

    尝试从剑桥下载arm-none eabi编译器,但无法运行: /主页/pi/spi_slave#/arm-2008q3/bin/arm无eabi gcc 猛击:/arm-2008q3/bin/arm-none eabi-gcc:无法执行二进制文件

    源代码

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

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

    #ARMGNU = arm-none-eabi
    

    环境

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

    我做错了什么?

    几个小时以来,我们一直试图在谷歌和stackoverflow上找到答案,但没有成功/

    1 回复  |  直到 13 年前
        1
  •  2
  •   Community Mohan Dere    9 年前

    arm-none-eabi 是一个非linux编译器。它是为 裸露金属 应用。不同之处在于 C 图书馆然而 gcc C 用于正常编译的库。

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

    您可以使用ARM Linux编译器为 裸露金属 应用然而,你可能更容易找到 新图书馆 针对Raspberry Pi的编译器。你可以在网上搜索 试着自己建造一个。

    请参阅: How to build gcc for Raspberry Pi Bare-metal gcc .