问题标签 [backport]

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 投票
0 回答
1653 浏览

linux-kernel - 内核一般保护故障

我正在将一个名为 GTP 的驱动程序从 4.9 Linux 内核反向移植到 3.18 版本。我修复了驱动程序源代码中的错误并成功编译了内核。我还使用 Ubuntu Server 14.04 来测试带有该驱动程序的内核。(还有一个netlink库(libgtpnl)来控制驱动。我做modprobe gtp没有问题。我用这个库来控制驱动的一些功能,没有问题。但是,奇怪的是,当我启用转发:(echo 1 > /proc/sys/net/ipv4/ip_forward)内核不知何故拖拉。我也无法执行许多网络命令(ifconfig、iproute等)

dmesg 显示:

由于驱动程序似乎没有许可证,因此有一些与内核污染相关的答案。但是它有,我不知道为什么内核没有意识到它。我找不到驱动程序如何使用 dev_disable_lro。我无法通过。任何帮助确定我的问题将不胜感激。谢谢

0 投票
14 回答
36618 浏览

python - python 2.7 functools_lru_cache 虽然安装但不导入

当我尝试导入 matplotlib 时出现错误

backports 本身可以正确导入。当我尝试通过手动安装 functools

我得到的信息

尽管如此,当我尝试

我得到的信息

系统信息 Ubuntu 16 Python 2.7.12 Pip 9.0.1

0 投票
1 回答
825 浏览

python - 我可以在 Python 3.6 之前的版本中使用 secrets 模块吗?

Python 的secrets模块是在 3.6 版本中引入的。我正在使用 Python 3.4 开发一个应用程序。有没有办法可以在 3.4 环境(a la from __future__ import print)中导入 secrets 模块?

如果没有,是否有具有类似功能的 3rd 方模块?

0 投票
1 回答
191 浏览

c++ - 如何在 Qt 中反向移植功能?

假设有一个使用 Qt 的项目,并且依赖于 Qt 新版本中的特性(例如添加的类成员)。该项目旨在使用 Qt 的“系统”/分发版本构建,该版本可能比项目所依赖的版本旧。

天真的方法导致预处理器地狱:

是否有更简洁的方法在使用该功能时不依赖于预处理器宏?即我们不想要:

0 投票
1 回答
2398 浏览

python-3.x - 在 python 3.5 附带的 Ubuntu 16.04 上运行 python 3.7 的最佳方式

我想避免反向移植,它们似乎总是把我的包裹弄乱了。

所以我在想像 conda / virtualenv / 甚至 docker 这样的工具可以提供帮助。在我的系统上使用 python 3.7 最简单/最干净的方法是什么?

0 投票
0 回答
175 浏览

java - 向后移植应用程序时发生 ConnectivityManager NullPointerException

我正在将 Android 应用程序从 Android 9 反向移植到 Android 5.1

现在我明白了,我得到了错误

造成这种情况的代码是

这是与使用的较低 API 版本或缺少 Java 8 有关的问题吗?不知道如何在这里进一步发展

谢谢!

0 投票
1 回答
175 浏览

bluetooth-lowenergy - 如何在 Linux 内核 3.10.0 版本中启用或反向移植蓝牙 BLE 功能?

我尝试在我的 linux 内核版本 3.10.0 中启用蓝牙 LE,但可以在 menuconfig 中找到 [*] 蓝牙低功耗 (LE) 功能。

我正在尝试为 Linux 内核版本 3.10.0 的 [*] 蓝牙低功耗 (LE) 功能找到反向移植补丁。

基本上我需要gatt服务,因为微信的应用程序接口只支持蓝牙的gatt api。

我看到 [*] 低功耗蓝牙 (LE) 功能仅 >= 内核版本 3.10.0 或从 3.13 版本开始启用 BLE。

请给我您的想法/参考链接以在 linux 内核版本 3.10.0 中启用 gatt 服务器。

我发现的其他选项是下载 backport tarball 并启用 BLE 功能,但我无法在任何地方找到 targball。

提前致谢

0 投票
1 回答
298 浏览

backport - 运行 rackup : 要求 backports 已贬值

我正在开发一个 Sinatra 应用程序。rackup在使用or启动服务器的地方shotgun,我收到以下消息:

我不需要在我的应用程序的任何地方进行反向移植。稍微查了一下,好像和linux内核有关(?)。我在 Manjaro 上运行它。

这是我应该担心的事情吗?如何修复这个?

0 投票
1 回答
175 浏览

python - 如何在 Yocto 构建中反向移植 Python?

我正在学习如何使用 Yocto 编译自定义 Linux。目前我正在使用 Yocto Project 2.4,并且已将 Python3 添加到构建中。但是,安装了 Python 3.5.2 并且我对更新的版本(例如Python 3.8.5)感兴趣。我使用这个 Yocto Project 版本的原因是因为我正在尝试为Toradex 模块编译一个特定的 Linux 版本。

那么,如何将更新的 Python 版本反向移植到我的构建中?我发现的唯一信息是在这个论坛帖子中,其中提到了有关复制 python3_x.xxbb 和 python3.inc 文件的内容,但我不清楚。

0 投票
1 回答
64 浏览

c++ - 减少 C++ 中的代码重复:在略有不同的项目中使用相同的样板代码片段

关于我的具体用例:我有一个旨在与虚幻引擎项目集成的插件,为了向该插件的用户演示如何做到这一点,我将它与虚幻的免费示例游戏之一集成举个例子。集成是非常特定于游戏的,因为它会修改菜单以允许用户轻松与我的插件交互。

但是,在理想的世界中,我希望能够:

  1. 跨多个不同的虚幻引擎版本提供与示例游戏的集成。至少这将包括 3 个当前存在的 Unreal 版本(4.24、4.25 和 4.26),但可能会扩展到 N 个不同的未来版本。这基本上使集成代码成为“样板”,因为它是每个示例游戏版本中的功能所必需的,但在不同版本之间完全没有变化。
  2. 能够从一个地方维护大部分集成代码。我不想每次更改某些内容时都必须在每个示例游戏集成中进行相同的修改,因为像这样处理多个并行代码库需要大量工作并且会增加错误的可能性。

这几乎是一个可以通过代码补丁解决的问题:无论我使用的是哪个版本的示例游戏,集成代码都适合相同文件中的相同函数/类。但是,示例游戏文件本身的内容在不同引擎版本中并不完全相同,因此“在这一行将这个大块插入到这个文件中”的补丁并不总是正确的。还有一种理论上的可能性,即未来将在示例游戏中引入更实质性的更改,这可能需要我在这种情况下更改我的集成(尽管这还没有发生 - 跨次要引擎版本的更改似乎很小)。

解决这个问题的最佳方法是什么?我能想到的一种特别可怕的方法(但一种展示了这个概念的方法)是将集成的每一块分离到一个单独的文件中,然后#include "Chunk1.inc"直接#include "Chunk2.inc"进入...示例游戏的每个版本中的相关类和函数中。

我确信这会编译,但对我来说编写或最终用户阅读并不容易,因为当在这样的片段中隔离时,代码本身将缺乏所有上下文。

另一个例子可能是将集成代码的每个部分保存在一个单独的类中,该类被声明为代码通常所在的类的朋友。朋友类有一个指向主类的指针,因此可以访问任何所需的私有成员,并具有在适当位置调用的相关函数。这种模仿 C# 的partial类概念,并且会使原始代码和修改代码之间的关系明确,因为它都是纯透明的 C++。

例如:

除了关于这是否是推荐做法的问题外,这里还有一个可读性权衡。尽管集成代码修改的内容定义明确且易于遵循,但它并不能真正代表真实用户将如何与他们的游戏集成 - 他们只是直接编写代码。额外的表达只是为了我自己的维护目的,这可能会使集成看起来比实际需要的更复杂。

这是思考这个问题的正确方法,还是我需要退后一步尝试不同的方法?有人有建议吗?


本着提供更多关于我实际使用的代码的细节的精神,我的集成包括以下内容:

现有源文件中的额外包含

现有课程的扩充

挂钩现有功能

这里的集成旨在简单地调用一个新函数并返回,以尽量减少对现有代码的差异。