首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在OS/X上用gnat编译ada库

在OS/X上用gnat编译ada库
EN

Stack Overflow用户
提问于 2013-06-05 10:44:33
回答 1查看 491关注 0票数 0

我已经从Adacore获得了消息来源,所以它应该能工作--我也在Adacore上留下了一个“问题”,但可能需要一些时间才能解决这个问题。我怀疑我可能做错了什么,有什么建议吗?

问题是:

代码语言:javascript
复制
$ gnat make gnatcoll-json.adb

    gcc -c gnatcoll-json.adb

    gnatcoll-json.adb:33:23: missing body for "Prepend" declared at gnatcoll-json.ads:64

    gnatcoll-json.adb:33:23: missing body for "Create" declared at gnatcoll-json.ads:99

    gnatcoll-json.adb:33:23: missing body for "Set_Field" declared at gnatcoll-json.ads:144

    gnatcoll-json.adb:33:23: missing body for "Get" declared at gnatcoll-json.ads:173

    gnatcoll-json.adb:33:23: missing body for "Get" declared at gnatcoll-json.ads:206

    gnatcoll-json.adb:454:63: prefix of dereference must be an access type

    gnatcoll-json.adb:641:33: invalid operand types for operator "/="    gnatcoll-json.adb:641:33: left operand has private type "UTF8_Unbounded_String" defined at gnatcoll-json.ads:47

    gnatcoll-json.adb:641:33: right operand has an access type

    gnatcoll-json.adb:642:19: no candidate interpretations match the actuals:

    gnatcoll-json.adb:642:28: expected type "Counter" defined at gnatcoll-json.ads:239

    gnatcoll-json.adb:642:28: found private type "Ada.Strings.Unbounded.Unbounded_String"

    gnatcoll-json.adb:642:28:   ==> in call to "Free" at gnatcoll-json.ads:289

    gnatcoll-json.adb:642:28:   ==> in call to "Free" at gnatcoll-json.ads:287

    gnatcoll-json.adb:642:28:   ==> in call to "Free" at gnatcoll-json.ads:285

    gnatcoll-json.adb:642:28:   ==> in call to "Free" at a-strunb.ads:88

    gnatcoll-json.adb:714:24: expected private type "Ada.Strings.Unbounded.Unbounded_String"

    gnatcoll-json.adb:714:24: found type access to "UTF8_String" defined at line 714

    gnatcoll-json.adb:841:28: prefix of dereference must be an access type

    gnatmake: "gnatcoll-json.adb" compilation error

我可以看到,文件中缺少的似乎是第一个问题。当然,例如,Prepend的主体不在该文件中,但我认为主体应该在gnatcoll.adb文件中,而不是gnatcoll.ads文件中。

EN

回答 1

Stack Overflow用户

发布于 2013-06-05 16:32:52

使用相当标准的configure/make/make install流程构建GNATColl。您可以通过查看发行版中的docs/building.rst来了解更多信息;我没有用于构建可安装版本的 program,但它是可读性很强的。还有docs/json.rst可以告诉您如何在安装GNATColl之后使用JSON支持。

在发行版的根目录中,

代码语言:javascript
复制
$ ./configure --prefix=/your/preferred/install/location # default is /usr/local
$ make
$ sudo make install # if /your/preferred/install/location isn't user-writable
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16937864

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档