px4_msgs编译报错问题解决,TypeError: canonicalize_version() got an unexpected keyword argument ‘strip_trailin

描述

最近在看官方教程,装PX4板外控制时,遇到px4_msgs包编译错误问题,如下:

 TypeError: canonicalize_version() got an unexpected keyword argument 'strip_trailing_zero'

当时很蒙逼,我是按官方给的步骤来的,怎么回报错。

经过查资料发现是系统自带的setuptools的版本问题,或者是没有这个东西。

解决办法

安装 setuptools==70.0.0的版本。

没有这个包的用户以及版本问题的用户直接执行以下命令,都可解决问题,这些可能需要科学上网

pip install --upgrade pip wheel pip-tools    //升级pip/安装pip工具
pip install --upgrade setuptools==70.0.0     //指定安装的版本
pip-compile requirements-dev.in              //更新配置

再编译就不会报错了

参考资料:https://github.com/pypa/setuptools/issues/4483

### 解决 Git 克隆仓库时遇到的 GnuTLS 收发错误问题 当尝试通过 HTTPS 协议克隆 GitHub 上的仓库时,如果遇到 `GnuTLS recv error (-110)` 错误提示,这通常意味着客户端与服务器之间的 TLS 连接未能正常终止。此类问题可能由多种因素引起,包括但不限于网络配置不当、防火墙设置严格或是本地安装的安全传输层库存在问题。 针对此情况,有几种方法可以尝试解决问题: #### 方法一:禁用 SSL 验证并增加缓冲区大小 可以通过调整全局 Git 设置来绕过部分安全验证机制,并增大 HTTP 缓冲区以适应更大的数据包传输需求。具体操作如下所示[^3]: ```bash sudo apt-get install gnutls-bin git config --global http.sslVerify false git config --global http.postBuffer 1048576000 ``` > **注意**: 关闭SSL验证虽然能暂时规避某些连接失败的情况,但从长远来看并不推荐这样做,因为这样会降低通信安全性。 #### 方法二:更换为 SSH 方式进行版本控制同步 考虑到HTTPS协议下的潜在兼容性难题,改用SSH密钥认证方式或许是一个更好的解决方案。首先需要确保本机已正确配置好SSH公私钥对,并将其添加到GitHub账户中;之后再更新远程URL地址指向新的SSH路径即可完成切换过程。 例如对于`PX4/px4_msgs`这个项目而言,则应执行以下指令: ```bash cd /path/to/local/repo git remote set-url origin git@github.com:PX4/px4_msgs.git ``` #### 方法三:升级或重新编译 GnuTLS 库 有时旧版的 GnuTLS 可能存在一些未修复的漏洞或者是不完全支持最新的加密算法标准,从而引发上述异常现象。因此建议检查当前使用的 GNU/Linux 发行版所提供的软件源里是否有更高版本可用,并按照官方文档指导实施相应的更新措施。 另外也可以考虑手动下载最新稳定发行版源码文件自行编译安装,在此过程中务必仔细阅读README等相关说明材料以便顺利完成整个流程。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值