问题解决:roscore报错: ‘ascii’ codec can’t decode byte 0xe6 in position 13: ordinal not in range(128)

3 篇文章 0 订阅

问题解决:使用ROS进行编译时报错: ‘ascii’ codec can’t decode byte 0xe6 in position 13: ordinal not in range(128)

问题描述

在使用roscore或者是编译rospackage时,新手可能会遇到如下错误:

Value error: 'ascii' codec can't decode byte 0xe6 in position 14: ordinal not in range(128)
The traceback for the exception was written to the log file

很多人会直接进行google或者百度错误问题,然而却找不到合适的答案。其实我们静下心来仔细分析就可以明白,这个错误的原因是因为我们的当前目录中包含了中文字符,然而ROS的工作空间目录中是不允许有中文的,因此,我们只需要更改我们工作空间的名称或者将工作空间放到其他英文目录下即可。

解决办法

有两个方法解决:
1.把工作空间直接建到用户目录下,如果你是将现有工作空间移动到用户目录。
2.把中文目录修改为英文,方法见将Ubuntu 用户目录下的中文目录修改为英文,同样,记得修改~/.bashrc中的环境变量

注意

修改完后,还要修改几处才能运行:

  1. ~/.bashrc中的环境变量,把你ROS工作空间目录的中文改成英文。
  2. 把你ROS工作空间build目录下的CMakeCache.txt文件删除。
  3. 把你ROS工作空间build目录下的Makefile文件中的中文改成英文,比如"桌面"替换为"desktop"。
  • 9
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值