Решил, что лучше всего снести (убрать в архив) имеющийся ~/catkin_ws и создать новый, по вот этой инструкции:
https://github.com/mavlink/mavros/tree/ ... stallationВроде ничего принципиального оно за пределами ~/catkin_ws не меняет, кроме rosdep install, её запустил с ключом -s чтобы сначала посмотреть, что делать будет, и она выдала такую ошибку:
ERROR: the following packages/stacks could not have their rosdep keys resolved to system dependencies:
mavlink: Cannot locate rosdep definitions for [python-future]
При попытке, несмотря на эту ошибку, собрать всё командой "catkin build" пакет "mavlink" упал, сообщив "ImportError: No module named future".
На файле ~/catkin_ws/src/mavlink/pymavlink/generator/mavgen.py
Видимо вот на этом участке:
11: from __future__ import print_function
12: 
from future import standart_library13: standart_library.install_aliases()
Поставил pip командой "sudo easy_install pip", поставил модуль "future" для питона командой "sudo pip install future"
По команде "catkin build" успешно собрались "mavros_msgs" и "mavlink", теперь "libmavcon" падает с "OSError: [Errno 12] Cannot allocate memory".
Вот на всякий случай полный скрин:
Workspace configuration appears valid.
--------------------------------------------------------------------------------
Found '6' packages in 0.1 seconds.
Starting ==> mavlink
Starting ==> mavros_msgs
Finished <== mavros_msgs   [ 32.6 seconds ]
Finished <== mavlink       [ 1 minute and 19.1 seconds ]
Starting ==> libmavconn
[build] Runtime: 1 minute and 54.8 seconds                                                                                                                                                           [4/4 Jobs | 1/4 Active | 2/6 Completed]
Traceback (most recent call last):
  File "/usr/bin/catkin", line 9, in <module>
    load_entry_point('catkin-tools==0.3.1', 'console_scripts', 'catkin')()
  File "/usr/lib/python2.7/dist-packages/catkin_tools/commands/catkin.py", line 229, in main
    sys.exit(args.main(args) or 0)
  File "/usr/lib/python2.7/dist-packages/catkin_tools/verbs/catkin_build/cli.py", line 334, in main
    summarize_build=opts.summarize  # Can be True, False, or None
  File "/usr/lib/python2.7/dist-packages/catkin_tools/verbs/catkin_build/build.py", line 828, in build_isolated_workspace
    wide_log(msg, rhs=msg_rhs, end='\r')
  File "/usr/lib/python2.7/dist-packages/catkin_tools/common.py", line 430, in wide_log
    wide_log_fn(msg, **kwargs)
  File "/usr/lib/python2.7/dist-packages/catkin_tools/common.py", line 366, in __wide_log
    width = terminal_width()
  File "/usr/lib/python2.7/dist-packages/catkin_tools/common.py", line 288, in terminal_width
    return terminal_width_windows() if os.name == 'nt' else terminal_width_linux()
  File "/usr/lib/python2.7/dist-packages/catkin_tools/common.py", line 280, in terminal_width_linux
    width = os.popen('tput cols', 'r').readline()
OSError: [Errno 12] Cannot allocate memory
Забыл еще вчера написать по наличию памяти:
- Код: Выделить всё • Развернуть
- ubuntu@aristoteles:~/catkin_ws$ free -m
 total       used       free     shared    buffers     cached
 Mem:           923        229        694          0          3         20
 -/+ buffers/cache:        206        717
 Swap:            0          0          0