Я ищу материалы или ссылки о кросс-компиляции, как eabi, и т.д.

Я ищу материалы или ссылки о кросс-компиляции, как eabi, и т.д. Я плохо знаком с основанной на Linux кросс-компиляцией, и я хочу разработать свое знание.

1
задан 18 August 2017 в 18:55

1 ответ

Из Установите набор инструментов для кросс-компиляции ARM в Ubuntu :

Как установить полный набор инструментов для Ubuntu для кросс-компиляции ядра Linux, драйверов устройств Linux, Linux приложения и загрузчик, такие как AT91Bootstrap, и его производные, такие как AcmeBoot и AriaBoot.

Эта процедура была протестирована в Linux Ubuntu 16.04.

Установите кросс-компиляторы, утилиты и т. Д.

Установите кросс-компиляторы GCC, G ++ и поддерживающие программы, набрав:

sudo apt-get install libc6-armel-cross libc6-dev-armel-cross
sudo apt-get install binutils-arm-linux-gnueabi
sudo apt-get install libncurses5-dev

Если вы используете Arietta , Aria или FOX G20 доска:

sudo apt-get install gcc-arm-linux-gnueabi
sudo apt-get install g++-arm-linux-gnueabi

Если вы используете плату Acqua или RoadRunner :

sudo apt-get install gcc-arm-linux-gnueabihf
sudo apt-get install g++-arm-linux-gnueabihf

Теперь вы готовы для кросс-компиляции на вашем ПК всех источников, доступных для плат Acme на базе микрочипов MPU.

Попробуйте кросс-компилятор C

Давайте попробуем кросс-компилировать пример Hello World в C и запустить его на плате Acme.

Это пример:

#include "stdio.h"

int main(void) {
  printf("Hello world!\n");
  return 0;
}

Скомпилируйте его, набрав:

arm-linux-gnueabi-gcc hello.c -o hello

Как вы можете видеть, мы используем версию gcc ARM, только что установленную на вашем ПК. Он сгенерирует исполняемый файл для вашей платы Linux.

Скопируйте исполняемый файл на плату с помощью ssh:

scp hello root@[your_board_ip]:/root

Затем откройте сеанс команд на вашей плате и запустите пример:

./hello
Hello world!

Попробуйте кросс-компилятор C ++ [ 1122]

Давайте попробуем сделать кросс-компиляцию примера Hello World на C ++ и запустить его на плате Acme.

Это пример:

#include "iostream"

using namespace std;

int main(int argc, char *argv[]) {
    cout << "Hello world!" << endl;
    return 0;
}

Скомпилируйте его, набрав:

arm-linux-gnueabi-g++ hello.cc -o hello

Как вы можете видеть, мы используем версию gcc ARM, только что установленную на вашем ПК. Он сгенерирует исполняемый файл для вашей платы Linux.

Скопируйте исполняемый файл на плате через ssh:

scp hello root@[your_board_ip]:/root

Затем откройте сеанс командной строки на своей плате и запустите пример:

./hello
Hello world!

Все пакеты в этом руководстве также находятся в репозиториях Ubuntu 14.04 по умолчанию.

Ссылки, специфичные для nRF51, LM35 и Arduino

4
ответ дан 3 December 2019 в 06:53

Другие вопросы по тегам:

Похожие вопросы: