arm-none-linux-gnueabihf-gcc --编译成功,没有创建可执行文件

vd8tlhqk  于 2023-08-03  发布在  Linux
关注(0)|答案(1)|浏览(143)

我正在使用Fedora 36通过VirtualBox,并试图编译一些代码的Cortex-A53从developer.arm.com的工具链
我已经下载了存档,在Downloads文件夹中解包,然后调用GCC,就像网站上的发布说明中所说的那样。
编译器成功地在我的代码中找到了VLA,并给出了修复它们的行号。所以它得到了源代码没有问题。我在代码中修复了VLA,然后编译成功,没有警告或错误消息,所以我去了一个可执行文件。
但是,由于某种原因,没有出现任何确切的名字。
我使用这个调用命令来编译:

/home/User/Downloads/arm-gnu-toolchain-12.2.rel1-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-gcc   my_code.c  -o  compiled/my_prog

字符串
我做错了什么?

kcugc4gi

kcugc4gi1#

好吧,解决方案是相当愚蠢的,但由于一些我不太理解的原因,aarch64-none-linux-gnu-gcc成功地创建了一个可执行文件,而arm-none-linux-gnueabihf-gcc-没有。
这是一个有点混乱编译的东西ARM芯片的工具,其中没有arm在其名称。
如果有人能澄清所有这些东西之间的差异,我想,这将是感激的。(至少对我来说)
我不能这样做,由于缺乏知识,也许我的可执行文件甚至不会运行,由于其他错误,我不小心犯了。
编辑:Exec成功运行,所以aarch64-none-linux-gnu-gcc肯定是为硬浮点芯片编译的,因为Cortex-A53就是这样的芯片。我不知道为什么有另一个明确声明-gnueabihf-代表硬浮点数。

相关问题