问题标签 [raptor2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
783 浏览

configuration - 为什么 rasqal 配置无法识别 cygwin 上已经存在的 raptor 库?

我正在尝试使用 cygwin 将 rasqal 0.9.20 库http://librdf.org/rasqal/安装到 Windows 7 机器上。之前我已经成功安装了 raptor-2.2.0 库http://librdf.org/raptor/我可以使用安装后创建的说唱歌手工具来验证这一点(./configure、./make、/make install)

我从 rasqal 的配置中得到的错误是:

我找不到修复它的方法。cofigure 文件中处理此标志的代码如下:

0 投票
2 回答
2616 浏览

visual-studio - 使用 gcc 在 Cygwin 中编译库 (redland) 并使用 Visual Studio (c++) 中的输出

我目前正在尝试在 Windows 下编译 redland (librdf http://librdf.org/ )。根据他们的网站,它应该在 Windows 下构建。因为我不想花时间修复 .sln,所以我考虑在 cygwin 中编译 librdf(和必要的项目),然后在 Visual Studio 中使用该库。

所以我的问题是:是否可以在 Windows 应用程序中使用在 cygwin 中编译的库?如果是这样怎么办?

由于我是 Windows 开发人员,我不知道创建的 .a 文件与 .dll 是否有任何区别。我已经阅读了该主题,并且有必要将 cygwin1.dll 包含在项目中,但这不会成为问题。

或者有没有人有更好的想法如何将redland编译为windows dll?我考虑过使用mingw,但直到现在我还没有设法编译它。

任何帮助将不胜感激。

谢谢

更新:

感谢 Yaakov(以及他非常酷的 cygwin 端口)的帮助,同时我设法编译了 raptor(这是 librdf 的先决条件)。我所要做的就是为配置添加另一个参数:--with-xml2-config=/usr/x86_64-w64-mingw32/sys-root/mingw/bin/xml2-config

现在我正在尝试编译 rasqal,它是另一个 requesite,也取决于 raptor2。为了让它工作,我必须为 pkg-config 导出 PKG_CONFIG_PATH="/usr/x86_64-w64-mingw32/sys-root/mingw/lib/pkgconfig/" 以找到正确的 raptor 安装。

因此,为 rasqal 配置工作,但是当我尝试进行配置时,出现以下错误:

我无法理解我并没有真正进入交叉编译。有人可以指出我正确的方向吗?

0 投票
1 回答
253 浏览

c++ - librdf 编译错误,未定义对 raptor_new_world_internal' 的引用

成功安装 raptor (librdf.org) 后,我运行g++ test.cpp编译。但是得到raptor2.h: No such file or directory

所以我复制/usr/include/raptor2/raptor2.h/usr/include/raptor2.h,上面的错误消失了。但是出现了一个新的错误:undefined reference to `raptor_new_world_internal'.

有人可以告诉我出了什么问题,谢谢.. 环境:ubuntu 12.04。

0 投票
1 回答
109 浏览

gcc - 为什么在考虑所有需要的库和引用时,我会收到“未定义的 xxx 引用”错误?

本质上,我正在尝试使用redland rdf库,但我无法链接到它们。当我尝试使用 redland 库的简单基本程序时,出现以下错误:

乍一看,您可能只是认为我缺少链接库,这是我在进一步检查之前的想法(见下文),但是,这些库都被考虑在内。

在这种情况下,一个适当的最小工作示例很困难,因为它需要获取和构建我正在尝试使用的库。但是,我创建了一个 GitHub存储库

其中包含构建 Redland 库所需的源文件以及我正在使用的示例代码(中断)。

为了构建库,您还需要

请注意,我正在为 Linux 的 Windows 子系统开发 Ubuntu-18.04。

要获取、构建和安装库,我使用这些终端命令:

它们在 github 存储库中作为 shell 脚本(get-raptor.shget-rasqal.shget-librdf.sh提供。

还有我最小的 CMake 脚本(也在存储库中):

以及 CMake 命令的输出:

要构建,我正在使用 CLion,它只是在后台执行此操作:

因此给了我链接器错误。nm通过使用检查 Redland 库的内容,我进行了更深入的挖掘。

第一个违规undfined reference错误

is in function librdf_free_memory,这是内部定义的引用librdf.a

当我们查找对 的未定义引用时raptor_free_memory,我们发现它在内部确实是未定义的librdf.a.

但这libraptor2.a无论如何都应该存在,如果我们看一下,我们会发现它确实存在并且定义为它应该是:

我的理解是,链接的过程本质上应该用里面librdf.a的定义来填充里面的未定义引用libraptor.a,但这显然没有发生。

为什么会这样?

0 投票
0 回答
437 浏览

xml - 如何在 SPARQL 查询语言中匹配 RDF 三元组中主题的相对 IRI?

我正在尝试使用SPARQL匹配相对于基础的 IRI。这是 rdf-xml 代码的示例片段:

我想根据主题匹配这个三元组rdf:about="metaid_1"。如果我运行以下 sparql 查询:

结果是:

但是当我运行以下任何一项时,我得到一个空结果:

有人可以建议基于相对metaid_1iri 匹配三元组的替代查询吗?

编辑 - 回复评论

我忘了提到我确实尝试过BASE这样使用:

和一些变体,但没有在评论中提出,即:

它还返回一组空的结果。

编辑 2 - 回复更多评论

@uninformedUser 是正确的,因为我要使用本地 iri,因为这些主题本质上是本地 xml 字符串的 xml 元素上的 metaid 属性。我想当我正在编写的包在网上使用时,它们会变成https://,但现在它们只是为测试而创建的字符串。

我已经尝试将其更改为xml:basefile:///mnt/d/libsemsim/tests/base-uri.rdf所以现在 xml 片段显示为:

和查询:

但我的结果集仍然是空的。我想知道问题是否在于我正在查询rdf model自身,它是librdf 包中的中心对象,不一定是我在这里展示的 xml 的序列化表示。

0 投票
0 回答
59 浏览

sparql - 为什么我无法匹配 sparql 查询中的 URI?

我正在编写一个 sparql 查询来搜索以下内容rdfxml

这个查询:

按我的预期工作并产生:

当格式化为csv. 然而这:

作为一个空的结果集出现。谁能告诉我为什么?

笔记:

  • 我正在使用一个C调用rasqal来执行查询的库,而 rdf 图是raptor(如果这对你们中的任何人都意味着什么=])
  • 所有节点都是 URI / IRI 节点,因此尝试"SemsimMetaid0000"也不起作用。
  • 在搜索 rdf 图时没有基本 uri。序列化需要基本 uri,rdfxml但在搜索图形时,我还没有设置基本 uri。