Ada_Ru форум

Обсуждение языка Ада

[ada_ru] GNAT LLVM

Оставить новое сообщение

Сообщения

Maxim Reznik
[ada_ru] GNAT LLVM
2019-09-30 13:05:05

Появился интересный вариант — компиляция Ады в LLVM. Этот подход открывает возможности

использования Ады с LLVM инструментарием, а значит можно относительно несложно получить

поддержку тех архитектур, которые есть в LLVM. В том числе WebAssembly, OpenCL SPIR-V, и др.

На github выложены исходные тексты компилятора GNAT LLVM. Процесс построения описан в

README.md. Помимо исходных текстов GNAT LLVM также необходимы исходные тексты GNAT,

сам LLVM и clang. Для построения нужен работаеющи компилятор Ады. Подойдет GNAT Community

Edition 2019 или даже GNAT FSF 8. Использовать GNAT Community, наверное предпочтительней,

тк. там есть поддержка GNAT LLVM в конфигурационных файлах gprbuild/gprconfig. Зато GNAT FSF 8 и другие зависимости можно поставить в Ubuntu прямо «из коробки».

Вот как выглядит установка на Ubuntu 19.04:

 

git clone https://github.com/AdaCore/gnat-llvm.git

cd gnat-llvm

svn co svn://gcc.gnu.org/svn/gcc/trunk/gcc/ada llvm-interface/gnat_src sudo apt install -y llvm-dev clang cmake gnat gprbuild g++

make

export PATH=$PWD/llvm-interface/bin:$PATH

cat > hello.adb << EOF

with Ada.Text_IO;

procedure Hello is

begin

Ada.Text_IO.Put_Line ("Hello");

end;

EOF

llvm-gnatmake hello.adb

Новое сообщение:
Страницы: 1

Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти