基本问题:
我怎样才能gcc告诉我它在哪里搜索Ada包含?
具体问题:
我刚刚将C库的头文件转换为Ada规范,以便我可以使用Ada. 我现在想在我的系统上安装规范。我还想让安装在某种程度上具有可移植性,以便我可以make install在任何机器上(从而Makefile在Github或类似设备上托管规范)。我只是不确定将规范安装在哪里。
gnat ls -v将为您提供默认搜索路径。
如果你想安装自己的 Ada 库,你应该在“项目搜索路径”中放置一个项目文件(.gpr),它会告诉 gnat 在哪里可以找到 ada 和 ali 文件以及库。
通常,您会将 ada 文件/usr/[local/]include/myadalib和 ali 文件放入其中,/usr/[local/]lib/myadalib并可能将 .so 文件链接到 .so 文件/usr/[local/]lib中,但您可以将它们放在任何您想要的地方。重要的是将项目文件(myadalib.gpr)放在项目搜索路径中。
您甚至可以通过设置 ADA_PROJECT_PATH 环境变量来调整项目搜索路径。