0

我正在努力使用最新的 Redhawk SDR 1.9 安装说明,了解如何让它在 Ubuntu 13.10 上运行(我也尝试过 Mint 15 无济于事)。具体来说,我注意到两件事:

  1. 对于framework-GPP/python,它说要运行make,但是这样做时它说“all”无事可做。如果它什么都不做,我不确定运行它有什么意义。这使我相信当我 ./reconf 和 ./configure 时出现问题,但我看不到这些错误。

  2. 对于 framework-bulkioInterfaces,在 bulkio_out_port.cpp 上make失败:error: 'pushSRI' was not declared in this scope and no declarations were found by argument-dependent lookup at the point of instantiation[-fpermissive]

我已经到处搜索了,但看起来其他人没有遇到这些问题。

有没有人有一套不同的/修改过的安装说明,用于在 Ubuntu(或只是基于 Debian 的发行版)上编译和安装 1.9?

4

3 回答 3

0

对于您的第一个问题:编写 GPP 的 Python 会在运行之前自动将您的 Python 脚本编译为字节码文件 (.pyc)。由于这是由 Python 解释器在执行之前完成的,因此 make 阶段不会产生任何内容。

为了解决 Ubuntu 13.10 问题,特别是 gcc 4.7+ 和 boost1.50+,必须对 framework-core 和 framework-bulkioInterfaces 应用一系列补丁。这些补丁已应用于https://github.com/VenturaSolutionsInc/framework-bulkioInterfaces https://github.com/VenturaSolutionsInc/framework-core

已经提出了一组拉取请求,以将这些更改推回基线。

bulkioInterfaces 需要 -fpermissive 的错误是由于 GCC 不再执行过去执行的基类范围的额外不合格查找或不合格模板函数查找的更改。见http://gcc.gnu.org/gcc-4.7/porting_to.html

在 libsrc/cpp/bulkio_out_port.cpp 中,所有对 pushSRI(currentSRI[streamID].first) 的引用都必须更改为显式调用“this”,从而导致 this->pushSRI(currentSRI[streamID].first);

boost 和框架的问题是由于 boost::filesystem v2 对 boost::filesystem v3 的弃用和删除。两者之间的变化可以在这里找到:http: //www.boost.org/doc/libs/1_49_0/libs/filesystem/v2/doc/index.htm。可以从以下网址下载修补的框架:https ://github.com/VenturaSolutionsInc/framework-core.git

最后,Ubuntu 13.X 中 boost 1.5+ 的默认安装位置已更改,默认情况下 configure 将找不到它。如果你阅读了上面引用的 git 项目中的 Ubuntu.md,你会看到我包含了标志 --with-boost-libdir=/usr/lib/x86_64-linux-gnu 来配置。这告诉自动工具在哪里可以找到 boost 1.5 库。

于 2013-12-11T15:20:19.513 回答
0

目前REDHAWK 支持Ubuntu 12.04 LTS。安装说明可以在这里找到:http ://redhawksdr.github.io/Documentation/mainap5.html

在未经测试的操作系统(例如 Mint 15 或 Ubuntu 13.10)上安装时,可能需要也可能不需要其他步骤,或者发生冲突。

要回答您的具体问题:

  1. 为 GPP 项目运行 make 时不会发生任何事情。您可以选择跳过该步骤并直接转到“sudo make install”。

  2. 这是 Ubuntu 13.10 特有的问题,尤其是因为它具有较新版本的 GCC,该版本比 Ubuntu 12.04 和 CentOS 5 和 6 中的版本更严格。要解决此问题,请尝试在调用时定义 CXXFLAGS 变量配置为包含“-fpermissive”标志,该标志告诉编译器“将一些关于不合格代码的诊断从错误降级为警告”。您可以像这样在一行中执行此操作:

CPPFLAGS="-fpermissive" ./configure

但是,这应该对您有用,请记住,在 13.10 上运行 REDHAWK 未经测试且不受支持。如果您需要基于 debian 的安装,我建议您使用 12.04 LTS。

于 2013-10-24T15:09:21.100 回答
0

有同样的问题。降级到 GCC-4.6 和 libboost1.49

于 2013-10-24T03:47:07.537 回答