Блог

Cоздание GNU C++ проекта для RISC-V в среде Eclipse.

В последнее время повышенным интересом пользуются статьи, затрагивающие аспекты работы с процессорами, имеющими архитектуру RISC-V. В предидущих статьях: Создание процессора со свободной архитектурой RISC-V. Часть 1. и Создание процессора со свободной архитектурой RISC-V. Часть 2. мы рассказывали о примере аппаратной реализации процессора с архитектурой RISC-V с использованием программируеых вентильных матриц.

В данной статье, мы установим GNU С++ компилятор, создадим и настроим первый проект для архитектуры RISC-V.

Для начала нам нужно скачать компилятор для архитектуры RISC-V. Это можно сделать по ссылке xPack GNU RISC-V Embedded GCC. После того, как вы выбарите подходящий под Вашу операционную систему пакет (нам подошел xpack-riscv-none-embed-gcc-8.3.0-1.2-win32-x64.zip), его необходимо распаковать в любую подходящую директорию, например D:\dev\RISC-V_toolchain\risc-v_gcc

Установка eclipse

Далее приступим к созданию самого проекта. Для этого в выберем меню Eclipse File->New->C/C++ Project. Появится меню выбора типа проекта:

Тип проекта eclipse

Выбираем тип проекта C++ Managed Build. В поле Project name: вводим название нашего проекта. Project type: выбираем Hello World RISC-V C++ Project.

Тип проекта eclipse

На следующем шаге можно задать параметры для нашего проекта.

Тип проекта eclipse

Далее выбираем какие конфигурации для сборки проекта будут доступнны.

Тип проекта eclipse

На следующем шаге, нам надо выбрать нужный тулчэйн для сборки нашего проекта. А так же выбрать директорию, куда мы ранее скопировали наш компилятор.

Тип проекта eclipse

После того как мы нажмем кнопку Finish у нас создастся тестовый проект, содержащий файл main.cpp со следующим содержимым:

C++ Code:
  1. //============================================================================
  2. // Name : main.cpp
  3. // Author : Visual electronics
  4. // Version :
  5. // Copyright : Your copyright notice
  6. // Description : Hello RISC-V World in C++
  7. //============================================================================
  8.  
  9. #include
  10. using namespace std;
  11.  
  12. //
  13. // Demonstrate how to print a greeting message on standard output
  14. // and exit.
  15. //
  16. // WARNING: This is a build-only project. Do not try to run it on a
  17. // physical board, since it lacks the device specific startup.
  18. //
  19.  
  20. int
  21. main()
  22. {
  23. cout << "Hello RISC-V World!" << endl;
  24. return 0;
  25. }

В принципе на этом шаге создание проекта уже закончено. Но соираться он пока не будет. Нам нужно зайти в настройки проекта, выбрать раздел C/C++ Build->Settings, выбрать вкладку Tool Settings раздел GNU RISC-V Cross C++ Linker подраздел Miscellaneous. Здесь нам надо выбрать настройки как на нашем рисунке.

Тип проекта eclipse

Вот теперь можно смело выбирать пункт Project->Build All!

Тип проекта eclipse

Поздравляю! Вы собрали свой GNU C++ проект для архитектуры RISC-V. В следующих статьях, мы расскажем как залить этот проект в реальное железо, и настроить отладку!