如何将 ARM 编译器命令翻译成 gcc 交叉编译工具链?
How to translate ARM compiler commands to gcc cross compile toolchain?
我有很多 armcc 命令,我喜欢将其转换为 gcc 选项。该代码最初用于不同的环境。我确实查看了 gcc --help,但没有看到相同的选项,例如 --cpu。有人可以帮忙吗?以下是命令:
del .\obj\*.o
armcc -c --debug --cpu=Cortex-A9.no_neon.no_vfp -O1 -o ./obj/foo ./src/foo.c
armcc -c --debug --cpu=Cortex-A9.no_neon.no_vfp -O1 -o ./obj/bar ./src/bar.c
armasm --debug --cpu=Cortex-A9.no_neon.no_vfp -o ./obj/buz.o ./src/buz.s
armasm --debug --cpu=Cortex-A9.no_neon.no_vfp -o ./obj/58
armlink --scatter=scatter_foo.txt --entry=fooStart -o foo.axf ./obj/foo ./obj/bar ./obj/buz.o ./obj/58
fromelf --bin -o foo.bin foo.axf
del .\obj\*.o
armcc -c --debug --cpu=Cortex-A9.no_neon.no_vfp -I ./headers/ -O1 -o ./obj/foo.o ./src/foo.c
armcc -c --debug --cpu=Cortex-A9.no_neon.no_vfp -I ./headers/ -O1 -o ./obj/bar.o ./src/bar.c
armcc -c --debug --cpu=Cortex-A9.no_neon.no_vfp -I ./headers/ -O1 -o ./obj/buz.o ./src/buz.c
armasm --debug --cpu=Cortex-A9.no_neon.no_vfp -o ./obj/bar.o ./src/bar.s
armasm --debug --cpu=Cortex-A9.no_neon.no_vfp --diag_suppress=A1786W -o ./obj/bar.o ./src/bar.s
armasm --debug --cpu=Cortex-A9.no_neon.no_vfp -o ./obj/58
armlink --scatter=foo.txtt -o example.axf --entry=bar --keep=bar.o(NORMAL_IMAGE) ./obj/foo.o ./obj/bar.o ./obj/startup.o ./obj/58
您使用 gcc --help 获得的选项并未列出所有选项(只有很多选项)。而是阅读应列出所有选项的在线文档。此外,汇编器、链接器和对象转储器(用于从 ELF 文件创建二进制文件)不是 GCC 的一部分,而是 GNU binutils 包的一部分。 – 来自 Joachim Pileborg
我有很多 armcc 命令,我喜欢将其转换为 gcc 选项。该代码最初用于不同的环境。我确实查看了 gcc --help,但没有看到相同的选项,例如 --cpu。有人可以帮忙吗?以下是命令:
del .\obj\*.o
armcc -c --debug --cpu=Cortex-A9.no_neon.no_vfp -O1 -o ./obj/foo ./src/foo.c
armcc -c --debug --cpu=Cortex-A9.no_neon.no_vfp -O1 -o ./obj/bar ./src/bar.c
armasm --debug --cpu=Cortex-A9.no_neon.no_vfp -o ./obj/buz.o ./src/buz.s
armasm --debug --cpu=Cortex-A9.no_neon.no_vfp -o ./obj/58
armlink --scatter=scatter_foo.txt --entry=fooStart -o foo.axf ./obj/foo ./obj/bar ./obj/buz.o ./obj/58
fromelf --bin -o foo.bin foo.axf
del .\obj\*.o
armcc -c --debug --cpu=Cortex-A9.no_neon.no_vfp -I ./headers/ -O1 -o ./obj/foo.o ./src/foo.c
armcc -c --debug --cpu=Cortex-A9.no_neon.no_vfp -I ./headers/ -O1 -o ./obj/bar.o ./src/bar.c
armcc -c --debug --cpu=Cortex-A9.no_neon.no_vfp -I ./headers/ -O1 -o ./obj/buz.o ./src/buz.c
armasm --debug --cpu=Cortex-A9.no_neon.no_vfp -o ./obj/bar.o ./src/bar.s
armasm --debug --cpu=Cortex-A9.no_neon.no_vfp --diag_suppress=A1786W -o ./obj/bar.o ./src/bar.s
armasm --debug --cpu=Cortex-A9.no_neon.no_vfp -o ./obj/58
armlink --scatter=foo.txtt -o example.axf --entry=bar --keep=bar.o(NORMAL_IMAGE) ./obj/foo.o ./obj/bar.o ./obj/startup.o ./obj/58
您使用 gcc --help 获得的选项并未列出所有选项(只有很多选项)。而是阅读应列出所有选项的在线文档。此外,汇编器、链接器和对象转储器(用于从 ELF 文件创建二进制文件)不是 GCC 的一部分,而是 GNU binutils 包的一部分。 – 来自 Joachim Pileborg