我正在尝试升级到GNAT GPL 2017(从2016年开始)。我在Windows 8.1上运行。

一个应用程序使用gnatcoll.xref。

在2016年,发现于:

gnat / include / gnatcoll / gnatcoll_sqlite.static / gnatcoll-xref.ads

但是,在2017安装中找不到该文件。请注意,2017年的'gnat -...- bin.exe'安装程序包括gnatcoll,而2016年是单独的安装。

2017年的gnatcoll用户指南(share / doc / gnatcoll / GNATColl.pdf)第25章说gnatcoll.xref应该存在(在示例代码中使用)。

还有其他人遇到吗?并有解决方法吗?

最佳答案

我通过从源代码安装gnatcoll来修复它,并覆盖了二进制安装。 gnatcoll.xref现在需要iconv(2016年不需要),因此我不得不在mingw32中安装它,并说服gnat使用它。这是一个简短的摘要:

mingw32软件包:

     mingw-w64-i686-make
     mingw-w64-i686-iconv
     mingw-w64-i686-pkg-config
     libiconv-devel


在mingw32 shell中:

export PATH=/d/Apps/GNAT-gpl_2017/bin:$PATH
./configure --build=mingw32 --prefix=/d/Apps/GNAT-gpl_2017 --with-iconv=d:/msys32/mingw32/


在Cygwin外壳中(mingw32使拧紧,不确定原因):

make
make install

10-06 05:19