Установка крос-компілятора arm

Установка крос-компілятора arm

Для будь-якого процесора потрібна програма. Писати програму теоретично можна на асемблері або C / C ++. Щоб запустити проект Amber в нашій платі Марсоход2 нам, звичайно доведеться писати і компілювати програми. Як це робити?

Як бачимо, в папці sw / проекту Amber лежать всякі різні програми. Зазвичай початківці програмісти пишуть програми типу "hello world". Ну ось і тут ми бачимо папку sw / hello-world з декількома файлами: hello-world.c. start.S. Makefile. sections.lds.

Hellow-world.c містить по суті дуже просту програму на мові C:

#include "stdio.h"
main ()
printf ( "Hello, World! \ n");
/ * Flush out UART FIFO * /
printf ( "");
_testpass ();
>

Функція printf друкує форматований текстовий рядок на консоль, а консоль у нас - це мабуть послідовний порт.

Походимо по інших папок проекту Amber - нічого схожого на компілятор не видно. Зате в папці doc є опис проекту англійською мовою amber-spec.pdf.

Ось там-то, в розділі 10.2 Installing compiler все що нам потрібно і написано.

Спробуємо виконати викладену там інструкцію.

Установка крос-компілятора arm

4) З'являється ось така сторінка - доведеться заповнити форму зі своїм прізвищем ім'ям і email, перш ніж нам дадуть скачати файл. Запоняю форму і натискаю кнопку Get It.

Установка крос-компілятора arm

На черговій сторінці мені сказали, що по пошті вислали посилання на скачування Sourcery Codebench.

5) Так і є. Я отримав від них листа. Переходжу за посиланням.

Установка крос-компілятора arm

Нарешті сторінка, звідки можна скачати! До речі схоже можна вибрати компілятор працює під Linux або працює під Windows. Я все ж вибираю для Linux.

Насправді я пробував викачувати компілятор і для Windows. Така красива інсталяшку до нього. Ставиться без проблем, ось тільки користуватися для наших цілей відразу не вийде. Є дві проблеми:

  1. Вихідні тексти для Amber мають Makefile. які описують що і як компілювати. Щоб використовувати Makefile потрібно мати встановлену програму make - це така спеціальна утиліта. В принципі начебто є make для Windows, але чесно кажучи було лінь шукати. У моєму Linux програма make здається стояла за замовчуванням з самого початку.
  2. Деякі папки проекту Amber, наприклад, sw / tools мають виконувані скрипти * .sh. Напевно їх так само можна було б запустити в Windows, але не став возитися з цим.

У мене є віртуальна машина з Ubuntu - її і використовував, поставив все там.

Його потрібно зробити виконуваним командами Linux:

і на всі питання відповідати натисканням клавіші Enter. Після цього в домашній папці з'являється папка CodeSourcery і в ній все і встановлено.

Таким чином, компілятор стає встановленим.

Щоб компілювати наші вихідні для Amber потрібно встановити змінну оточення

і додати до змінної PATH шлях до компілятора

Я написав такий ініціалізації файл sw / init який задає ці змінні. Тепер після запуску терміналу в Linux можна просто набрати в корені проекту

і все - середовище розробки практично готова.

Так ось ще скрипти в папці sw / tools не запускаються. Щоб це виправити їм потрібно задати права дозволу виконання

chmod a + x sw / tools / *. sh

Тепер якщо зайти, наприклад, в папку sw / hello-world і набрати

то відбувається компіляція програми і з'являються різні об'єктні і текстові файли - власне результат компіляції.

Користуватися програмою make, а також запускати bash скрипти можна з Windows, встановивши Cygwin. Привабливість у тому, що з консолі Cygwin можна запускати як проги скомпілірованни е під * nix (Cygwin), так і програми, встановлені в Windows. Таким чином мені вдалося запускати з bash скриптів ModelSim, встановлений на Windows

Залишилося поставити Quarus for linux і буде ноборот. Windows в віртуьной машині.

А воотбще приголомшливий сайт.


да, працювати тільки в Лінуксі це було б не погано.
Є одна проблема - драйвер програматора MBFTDI поки є тільки для Quartus II Windows.
Звичайно, для Linux у нас є утиліта SVF плеєра, яка може завантажувати образи в ПЛІС, але ось з її допомогою не можна користуватися дуже важливою функцією Quartus SignalTap. Ось таке обмеження.

Залишилося поставити Quarus for linux і буде ноборот. Windows в віртуьной машині.

Схожі статті