Команда для сборки статических исполнимых файлов выглядит так:
gnatmake -static hello.adb -largs -static
Существует как минимум три основные версии компилятора GNAT под Linux. GNAT Pro — версия от AdaCore под коммерческой лицензией; GNAT GPL / GNAT GAP — версия от AdaCore под лицензией GPL; gnat‐из‐дистрибутива — версия от сборщиков дистрибутива, обычно исходные материалы для сборки этой версии берутся из дерева GCC;
Первый представляет собой дистрибутив системы разработки от непосредственного производителя. Выпускается раз в год. Как правило имеет более свежую версию, чем gnat‐из‐дистрибутива. Но при установке может потребоваться небольшая доработка напильником.
Второй представляет собой дистрибутив системы разработки из дерева GCC. Обновляется нерегулярно. Как правило имеет более старую версию, чем версия GNAT GPL. При установке (одной командой) устанавливаются все зависимости и материалы. Названия некоторых команд могут отличаться от версии GNAT GPL. Например, GNAT Programming Studio, в GNAT GPL называется gps, а этой версии: gnat-gps. Из плюсов можно отметить, что эта версия доступна практически на всех платформах, под которые собирается Debian.
gnat из дистрибутива можно установить следующий командой:
$ sudo apt-get install gnat
Здесь и далее описывается установка именно версии GNAT GPL 2013 полученной с сайта AdaCore.
Скачиваем файл gnat-gpl-2013-x86_64-pc-linux-gnu-bin.tar.gz со страницы http://libre.adacore.com/download/
Далее разархивация и начальная установка:
$ tar xf gnat-gpl-2013-x86_64-pc-linux-gnu-bin.tar.gz $ cd gnat-gpl-2013-x86_64-pc-linux-gnu-bin $ sudo ./doinstall
Если не установлена библиотека libjpeg62, то GNAT Programming Studio (команда gps) запустится с ошибкой:
/usr/gnat/bin/gps_exe: error while loading shared libraries: libjpeg.so.62: cannot open shared object file: No such file or directory
Установить недостающую библиотеку можно следующей командой:
$ sudo apt-get install libjpeg62
По‐умолчанию GNAT GPL устанавливается в каталог /usr/gnat. В соответствии с требованием установщика не забудьте разместить пути к GNAT'у в конце файла ~/.profile, а так же указываем другие переменные окружения:
$ nano ~/.profile
PATH=/usr/gnat/bin:$PATH; export PATH CPATH=/usr/include/x86_64-linux-gnu; export CPATH LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LIBRARY_PATH; export LIBRARY_PATH
Вместо добавления последних двух строк, можно разместить символьную ссылку в каталоге /usr/, но это только если у вас есть права администратора и вы точно уверены, что это не повредит системе:
$ sudo ln -s /usr/lib/x86_64-linux-gnu /usr/lib64
После внесения изменений в файл ~/.profile необходимо перезайти в систему или перечитать этот файл:
$ source ~/.profile
После этого новые переменные окружения вступят в силу и можно успешно пользоваться системой GNAT GPL 2013.
Вы можете задать вопрос, или уточнить что‐либо, если у вас данные инструкции не работают, а также высказать пожелания держателю этой секции по адресу [email protected] и/или обратиться в Jabber‐конференцию, посвящённую языку программирования Ада ([email protected]).
Если при запуске GPS под Windows выдает 'The application failed to initialize properly' установите 'MSVC++ 2008 redistributable runtime'.