Ada 编译问题

Ada 编译问题

你好,我使用的是 ubuntu 14.04 LTS,并且使用 Code::blocks 编写 c 程序和 Ada 程序。当我使用命令“gcc -o test test.c”时,C 可以编译并运行良好,但当我编译我的 Ada 程序时,会出现以下错误

$ gcc -c hello.adb 
gcc: error trying to exec 'gnat1': execvp: No such file or directory 

我已经从 ubuntu 软件中心安装了 GNAT。请告诉我如何忽略此错误。

谢谢

答案1

我遇到了这个问题。我在 Mac OS 上从 Adacore 安装了 GNAT 和 GPS。我发现一个目录包含一堆与 Ada 相关的二进制文件,包括 gcc

/opt/gps/bin 

但无论使用此版本的 gcc 还是我的机器上安装的默认版本,我都会收到以下错误

gcc: error trying to exec 'gnat1': execvp: No such file or directory 

我必须使用位于的 gcc 二进制文件

/Users/dale/opt/GNAT/2018/bin/

而且它确实有效。所以我认为,正如其他人所评论的那样,这可能是由于您使用的 gcc 版本所致。

答案2

尝试以下命令:

$ gnatmake hello.adb 

答案3

简单的回答,通过下面的命令安装 GNU-Ada-Compiler

sudo apt-get install gnat

答案4

我在编译 ada 时遇到了类似的问题。

我认为问题在于您的计算机正在使用旧的 gcc,而不是 gnat 中包含的 ada-aware gcc。

如果您从 adacore 安装 gnat,您将获得一个二进制文件夹,您可以将其添加到路径中。我不知道 ubuntu GNAT 包是做什么的,但您的系统中的某个地方会有二进制文件。

您可以重新排序 PATH 以将 GNAT gcc 放在较早的位置。或者您可以明确调用 gnat gcc 的位置。

相关内容