我是新手,试图在Linux上学习ADA。我安装了GPS和ADA,并准备了几本书来查看互联网上的网站。
经过几次练习后,我将一对夫妇转换为本地图书馆,因为它们在以后的章节中经常使用。
我看不到(理解?)如何在练习的项目文件中设置本地库。Directory structure of my test environment文件Test01使用Basic_IO,而Test02使用Basic_IO和通用Basic_Stack。
这里是Test01的项目文件:test01.adb
有人可以向我解释如何设置库,以便程序进行编译和链接吗?
谢谢,
RD
技巧是为.gpr
和Basic_IO
创建单独的项目文件(Basic_Stack
文件),并在测试项目文件中引用这些项目文件(使用with
)。您可能想看看learn.adacore.com和GPRbuild user’s guide。我还将目录结构更改为此:
|
+-- learning_ada.gpr
+-- tests/
| |
| +-- test01/
| | |
| | +-- test01.gpr
| | +-- obj/
| | +-- src/
| | |
| | +-- test01.adb
| |
| +-- test02/
| |
| +-- test02.gpr
| +-- obj/
| +-- src/
| |
| +-- test01.adb
|
+-- lib/
|
+-- basic_io/
| |
| +-- basic_io.gpr
| +-- obj/
| +-- src/
| |
| +-- basic_io.ads
| +-- basic_io.adb
|
+-- basic_stack/
|
+-- basic_stack.gpr
+-- obj/
+-- src/
|
+-- basic_stack.ads
+-- basic_stack.adb
并使用以下命令引用(例如)Basic_IO
中的test_01.gpr
项目:
test01.gpr
with "..\..\lib\basic_io\basic_io.gpr";
[...]