16得票1回答
Ada函数与过程的区别

有人能解释一下Ada语言中的“procedure”和“function”之间的区别吗?

13得票2回答
如何在C++处理程序中捕获Ada异常信息?

使用GNAT Ada和Gnu C++,我正在将一个Ada代码片段与一个C++ wrapper进行接口处理,并且希望在运行此(愚蠢的)代码时正确地捕获Ada异常。 with ada.text_io; package body ada_throw is procedure ada_th...

10得票4回答
如何让使用GNAT编译的Ada程序导入当前目录以外的文件?

我正在一所大学参加编程入门课程,所选的语言是Ada。我在Kate中编写代码,并使用GNAT 4.6.3进行编译。我们必须使用老师提供的程序库来编写程序,就像这样:with foo; use foo; 当然,这意味着文件foo.adb必须与我的源文件保存在同一个目录中。由于多个项目依赖此库,并...

10得票3回答
Mac平台上的Gnat Ada编程工具

我在我的编程课上正在学习Ada 95,并且想在我的 MacBook 上安装gnat编译器。我不知道在哪里获取一个好的gnat来编译我的代码,以及如何安装它。 目前我使用的文本编辑器是gedit,因为这是我们实验室环境中使用的。我对Mac系统还很陌生,任何帮助都将不胜感激。

9得票1回答
在Alpine Linux的Docker容器中构建GNATCOLL

我似乎无法在基于Alpine Linux的Docker容器中编译GNATCOLL。 我的容器目前为: FROM alpine:edge # Add extra repositories RUN echo 'http://dl-cdn.alpinelinux.org/alpine/edge...

8得票1回答
如何创建一个ada lib.a并将其链接到C

我正在尝试创建一个Ada库,并尝试了几种不同的方法。 我已经尝试使用makefiles编译项目,并尝试从所有.o文件创建库。 这似乎没有按预期工作。 然后我向adacore支持人员寻求帮助,他们指导我使用.gpr文件来处理ada和c项目,在ada.gpr中进行设置,以创建库。这几乎起作用了,但...

7得票2回答
Ada抑制不可达代码或缺少返回

我有一个标记类型,实现了许多函数。在某些情况下,我需要其中一个函数进入无限循环。不幸的是,据我所知,没有办法编译它而不会引发警告。我希望仍然使用-gnatwe确保我的代码中没有警告,但是如何实现这样的函数。 以下是该函数的样子: function Foo (This : Some_Type...

7得票1回答
Adacore Gnat版本和“标准”版本的区别是什么?

我正在尝试理解Adacore Libre版本提供的Gnat编译器与Linux发行版或MinGW中标准的gcc附带的编译器之间的基本区别。 我认为主要区别可能在于Adacore版本始终是最新版本,而Linux发行版所提供的版本可能是包装时可用的版本。 但是还有功能上的差异吗?也就是说,Ada...

7得票2回答
在gprbuild文件中设置--create-missing-dirs选项

有一个单独的目录用于存储对象文件是很有用的。然而,如果该目录不存在,gprbuild会发出投诉。我使用hg进行版本控制,无法跟踪空目录(据我所知,这在git中也是如此),即使可以,也不希望在存储库中放置空目录。gprbuild有一个选项,--create-missing-dirs (简称-p)...