Проблема установки с AWS для Ada - PullRequest
3 голосов
/ 09 ноября 2011

Сегодня вечером я впервые установил Ada и AWS на Macbook.

С установкой все выглядело успешно, но у меня возникает ощущение, что AWS не установился в нужный каталог.

GNAT находится в /usr/local/gnat.

AWS makefile.conf сказал:

AWS will be installed under $(prefix). Update this variable to point to
the install directory. By default, it is set to the current GNAT root
directory to have AWS project files automatically available.

Так что я не изменил цель.

Но когда я пытаюсь скомпилировать hello_world из любой точки системы, кроме папки демоверсий AWS, я получаю эту ошибку:

~/projects/ada:gnatmake hello.adb
gcc -c hello.adb
hello.adb:1:06: file "aws.ads" not found
hello.adb:2:06: file "aws.ads" not found
hello.adb:3:06: file "aws.ads" not found
hello.adb:4:06: file "aws.ads" not found
gnatmake: "hello.adb" compilation error

Как я могу убедиться, что AWS был установлен правильно, или переместить его, если он не был?

1 Ответ

6 голосов
/ 09 ноября 2011

Ответ (ну, скорее, намек на знающих людей) заключается в словах «иметь файлы проекта AWS автоматически доступными».

В контексте GNAT «файл проекта» означает файлтипа .gpr, который сообщает разработчику (gnatmake или gprbuild), где найти исходные файлы, как их скомпилировать и где найти любые библиотеки, от которых зависит этот проект.

Создайте hello.gpr:

with "aws";
project Hello is
   for Main use ("hello.adb");
end Hello;

(что является очень минимальным), затем

with AWS;
with Ada.Text_IO;
procedure Hello is
begin
   Ada.Text_IO.Put_Line ("AWS version is " & AWS.Version);
end Hello;

, скомпилированным с

gprbuild -P hello.gpr

выходами

AWS version is 2.10.0w

Он-лайн информация о gprbuild и gnatmake (gnatmake заменена gprbuild);вероятно, в вашем установленном GNAT есть информация (подкаталоги) ${prefix}/share/doc.

...