ROS交流群
ROS Group 产品服务
Product Service 开源代码库
Github 官网
Official website 技术交流
Technological exchanges 激光雷达
LIDAR ROS教程
ROS Tourials 深度学习
Deep Learning 机器视觉
Computer Vision
ROS Group 产品服务
Product Service 开源代码库
Github 官网
Official website 技术交流
Technological exchanges 激光雷达
LIDAR ROS教程
ROS Tourials 深度学习
Deep Learning 机器视觉
Computer Vision
ros 无法创建工作空间
-
在ros的工作空间中执行catkin_make出现下面的错误
执行其他的python指令同样会有这个错误。from pkg_resources import load_entry_point File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 72, in <module> import packaging.requirements File "/usr/lib/python2.7/site-packages/packaging/requirements.py", line 59, in <module> MARKER_EXPR = originalTextFor(MARKER_EXPR())("marker") TypeError: __call__() takes exactly 2 arguments (1 given)
产生这个现象的原因有两个。一个是setuptool新版本有bug。执行下面的指令可以修复。
sudo pip install setuptools==33.1.1 #更新 在 2017.4.7 setuptools 已经修复了这个bug,可以用下面的指令升级到最新版 python -m pip install --upgrade --force pip
另一个可能的原因是系统的python被修改了。比如默认的python改成了python3。可以通过
python --version
来看看当前的python是什么版本。如果版本被修改了就要改回来。因为对于Ubuntu系统很多系统程序使用的是python2.7。出现这个错误可能就是由于使用python3去执行python2.7的程序了。
对于我的这个问题,最终发现是由于系统的python版本被修改导致的,系统的python被pyenv修改成了3.5。
解决方法
将系统的python改为2.7,禁用pyenv之类的更改python版本的工具(这个工具会创建自己的python环境,导致之前安装的一些python包没办法使用)
然后把setuptool设置到以前版本
pip install setuptools==33.1.1