CubieBoard6(S500,armhf)安装ROS过程
1. ubuntu armhf 安装ros
错误描述
在使用 http://wiki.ros.org/indigo/Installation/UbuntuARM 官网安装ros是,报错:
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
python-rosdep : Depends: python-catkin-pkg but it is not going to be installed
Depends: python-rosdistro (>= 0.4.0) but it is not going to be installed
python-rospkg : Depends: python-catkin-pkg but it is not going to be installed
python-rospkg-modules : Depends: python-catkin-pkg but it is not going to be installed
ros-indigo-catkin : Depends: python-catkin-pkg (> 0.2.9) but it is not going to be installed
ros-indigo-rospack : Depends: python-catkin-pkg but it is not going to be installed
处理办法(修改为国内ROS源)
1)打开source.list文件
sudo gedit /etc/apt/sources.list
2) 把下面两句,添加到sources.list文件中
deb http://ports.ubuntu.com/ trusty main restricted universe multiverse
deb-src http://ports.ubuntu.com/ trusty main restricted universe multiverse
deb http://ports.ubuntu.com/ trusty-updates main restricted universe multiverse
deb-src http://ports.ubuntu.com/ trusty-updates main restricted universe multive rse
deb http://ports.ubuntu.com/ trusty-security main restricted universe multiverse
deb-src http://ports.ubuntu.com/ trusty-security main restricted universe multiv erse
deb http://ports.ubuntu.com/ trusty-backports main restricted universe multivers e
deb-src http://ports.ubuntu.com/ trusty-backports main restricted universe multi verse
3)再更新软件源
sudo apt-get update
安装完ros后,运行roscore报错
错误描述
ebort@localhost:/root$ roscore
Traceback (most recent call last):
File "/opt/ros/indigo/bin/roscore", line 69, in <module>
import roslaunch
File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/__init__.py", line 56, in <module>
from .launch import ROSLaunchRunner
File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/launch.py", line 55, in <module>
from roslaunch.nodeprocess import create_master_process, create_node_process
File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/nodeprocess.py", line 49, in <module>
from roslaunch.node_args import create_local_process_args
File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/node_args.py", line 53, in <module>
import roslib.packages
File "/opt/ros/indigo/lib/python2.7/dist-packages/roslib/__init__.py", line 54, in <module>
import roslib.stacks
File "/opt/ros/indigo/lib/python2.7/dist-packages/roslib/stacks.py", line 46, in <module>
import roslib.packages
File "/opt/ros/indigo/lib/python2.7/dist-packages/roslib/packages.py", line 49, in <module>
from catkin.find_in_workspaces import find_in_workspaces as catkin_find
File "/opt/ros/indigo/lib/python2.7/dist-packages/catkin/find_in_workspaces.py", line 36, in <module>
from catkin_pkg.packages import find_packages
ImportError: No module named catkin_pkg.packages
解决办法:
需要安装python库,可以通过pip的方式进行安装
sudo pip install catkin_pkg
若pip安装失败,可以参考下面的解决办法去安装pip。
2 ubuntu armhf 上pip的安装
错误描述
ebort@localhost:/root$ sudo apt-get install pip
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package pip
解决办法:
sudo wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate
sudo python get-pip.py
截图
ebort@localhost:/root$ sudo wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate
--2019-01-11 09:34:10-- https://bootstrap.pypa.io/get-pip.py
Resolving bootstrap.pypa.io (bootstrap.pypa.io)... 151.101.228.175, 2a04:4e42:1a::175
Connecting to bootstrap.pypa.io (bootstrap.pypa.io)|151.101.228.175|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1661676 (1.6M) [text/x-python]
Saving to: 'get-pip.py'
100%[============================>] 1,661,676 53.7KB/s in 34s
2019-01-11 09:34:45 (48.0 KB/s) - 'get-pip.py' saved [1661676/1661676]
ebort@localhost:/root$ sudo python get-pip.py
The directory '/home/ebort/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/ebort/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting pip
/tmp/tmp3cySTa/pip.zip/pip/_vendor/urllib3/util/ssl_.py:369: SNIMissingWarning: An HTTPS request has been made, but the SNI (Server Name Indication) extension to TLS is not available on this platform. This may cause the server to present an incorrect TLS certificate, which can cause validation failures. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
/tmp/tmp3cySTa/pip.zip/pip/_vendor/urllib3/util/ssl_.py:160: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
/tmp/tmp3cySTa/pip.zip/pip/_vendor/urllib3/util/ssl_.py:160: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
Downloading https://files.pythonhosted.org/packages/c2/d7/90f34cb0d83a6c5631cf71dfe64cc1054598c843a92b400e55675cc2ac37/pip-18.1-py2.py3-none-any.whl (1.3MB)
100% |################################| 1.3MB 15kB/s
Collecting wheel
Downloading https://files.pythonhosted.org/packages/ff/47/1dfa4795e24fd6f93d5d58602dd716c3f101cfd5a77cd9acbe519b44a0a9/wheel-0.32.3-py2.py3-none-any.whl
Installing collected packages: pip, wheel
Successfully installed pip-18.1 wheel-0.32.3
/tmp/tmp3cySTa/pip.zip/pip/_vendor/urllib3/util/ssl_.py:160: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
ebort@localhost:/root$ pip
Usage:
pip <command> [options]
Commands:
install Install packages.
download Download packages.
uninstall Uninstall packages.
freeze Output installed packages in requirements format.
list List installed packages.
show Show information about installed packages.
check Verify installed packages have compatible dependencies.
config Manage local and global configuration.
search Search PyPI for packages.
wheel Build wheels from your requirements.
hash Compute hashes of package archives.
completion A helper command used for command completion.
help Show help for commands.
General Options:
-h, --help Show help.
--isolated Run pip in an isolated mode, ignoring
environment variables and user
configuration.
-v, --verbose Give more output. Option is additive,
and can be used up to 3 times.
-V, --version Show version and exit.
-q, --quiet Give less output. Option is additive,
and can be used up to 3 times
(corresponding to WARNING, ERROR, and
CRITICAL logging levels).
--log <path> Path to a verbose appending log.
--proxy <proxy> Specify a proxy in the form
[user:passwd@]proxy.server:port.
--retries <retries> Maximum number of retries each
connection should attempt (default 5
times).
--timeout <sec> Set the socket timeout (default 15
seconds).
--exists-action <action> Default action when a path already
exists: (s)witch, (i)gnore, (w)ipe,
(b)ackup, (a)bort).
--trusted-host <hostname> Mark this host as trusted, even though
it does not have valid or any HTTPS.
--cert <path> Path to alternate CA bundle.
--client-cert <path> Path to SSL client certificate, a
single file containing the private key
and the certificate in PEM format.
--cache-dir <dir> Store the cache data in <dir>.
--no-cache-dir Disable the cache.
--disable-pip-version-check
Don't periodically check PyPI to
determine whether a new version of pip
is available for download. Implied
with --no-index.
--no-color Suppress colored output