我将如何在 Pepper 上安装东西,因为我不知道它使用什么包管理器。我通常在我的 Ubuntu 机器上使用 apt 并想在 Pepper 上安装一些软件包。我不确定 Pepper 有什么包管理器(如果有的话)并且想要安装一些包,但也只知道使用 apt 的包的名称(不确定包名在其他包管理器上是否相同)。如果可能的话,我可以在 Pepper 上安装 apt 吗?谢谢。
注意:根据我所做的研究,Pepper 使用的是基于使用 portage 的 Gentoo 的 NaoQi。
我将如何在 Pepper 上安装东西,因为我不知道它使用什么包管理器。我通常在我的 Ubuntu 机器上使用 apt 并想在 Pepper 上安装一些软件包。我不确定 Pepper 有什么包管理器(如果有的话)并且想要安装一些包,但也只知道使用 apt 的包的名称(不确定包名在其他包管理器上是否相同)。如果可能的话,我可以在 Pepper 上安装 apt 吗?谢谢。
注意:根据我所做的研究,Pepper 使用的是基于使用 portage 的 Gentoo 的 NaoQi。
您在 Pepper 上没有 root 访问权限,这限制了您可以安装的内容(而且 apt 无论如何都不在机器人上)。
一些可能性:
在 NAOqi 2.5 中,安装了一个稍旧的 pip 版本,它并不总是开箱即用;我建议升级它:
pip install --user --upgrade pip
...然后您可以使用升级的 pip 安装其他软件包,使用升级的 pip,并且始终使用 --user:
/home/nao/.local/bin/pip install --user whatever-package-you-need
但是请注意,如果您这样做并在 Pepper 上运行的代码中使用您的包,那么在您对其他机器人执行 pip 之前,该代码将无法在其他机器人上运行,这就是为什么我通常只为测试这样做;对于生产代码,我更喜欢将所有依赖项打包在我的应用程序包中。
如果您需要使用 Gentoo Prefix 安装软件(或只是较新版本的软件),作为一种解决方法是一种选择。
Gentoo Prefix在任何位置(不需要根目录,可以是任何文件夹)构建一个 Gentoo 操作系统。它包括它自己的portage(包管理器)来安装新软件。
我维护了一些与 Pepper 合作的项目,并使用我想要的“任何”软件。请注意,它们是为 64b (amd64) 和 32b (x86) 构建的,尽管对于 Pepper 来说只有 32b 重要。
也许这种方法或这些项目很有用。
如果它基于 Gentoo,也许我们可以尝试portage
使用pip
.
pip install portage
只是一个想法。
Pepper 上的包管理器已禁用。但是您可以将文件复制到机器人并编写自己的服务来导入您可能需要的任何包。
作为导入的补充: http ://www.about-robots.com/how-to-import-python-files-in-your-pepper-apps.html
摆脱
InsecurePlatformWarning:真正的 SSLContext 对象不可用。
安装
/home/nao/.local/bin/pip install --user requests[security]
摆脱:
CryptographyDeprecationWarning:不推荐对您的 Python 版本的支持。
安装
/home/nao/.local/bin/pip install --user cryptography==2.2.2
摆脱错误:
“ SSL3_GET_SERVER_CERTIFICATE:证书验证失败”。
如果您使用 python 和requests
包,只需verify=False
在参数末尾添加即可。
r=requests.get(URL,params,header,verify=False)
和我的 Pepper 一起工作