Führen Sie ein unter Ubuntu kompiliertes C-Sprachprogramm auf Raspberry Pi Zero aus. Das ist alles.
Host: Ubuntu 20.04.1 <Virtual Box 6.1 <Windows10 Ziel: Raspberry Pi Zero WH
$ sudo apt install g++-arm-linux-gnueabi
Ich brauche diesmal gcc, aber ich kann es in Zukunft verwenden, also installiere g ++. Es werden auch gcc und andere notwendige Elemente installiert.
Es gibt auch einen Artikel, in dem g ++ - arm-linux-gnueabihf
als Cross-Compiler für Raspberry Pi installiert wird, der jedoch keine Zero-CPUs (ARMv6-Serie) unterstützt.
Das Programm, das dieses Mal zuvor erstellt werden soll
hogehoge.c
#include <stdio.h>
int main()
{
printf("Hogehoge Cross!!\n");
return 0;
}
Es ist das erste Mal, also ist es so. Baue das so.
$ arm-linux-gnueabi-gcc -march=armv6 hogehoge.c -o hogehoge_armv6
Geben Sie die ARM-Architektur mit -march =
an.
Da es sich bei Raspberry Pi Zero um die ARMv6-Serie handelt, habe ich sie als solche angegeben, jedoch in diesem Programm
Alle arbeiteten mit der Angabe von "armv4", "armv5t", "armv5te", "armv5tej", "armv6".
Der mit "armv7" wurde als "Segmentierungsfehler" angezeigt und funktionierte nicht.
Ich habe oben "Es hat funktioniert" geschrieben, aber ich habe die erstellte Datei hogehoge_armv6 in ein geeignetes Verzeichnis auf Raspberry Pi Zero kopiert.
$ ./hogehoge_armv6
Hogehoge Cross!!
Es hat so funktioniert.
Es ist ein einfaches Programm, aber es hat überraschend leicht funktioniert.
Ich habe den folgenden Artikel geschrieben
Recommended Posts