Ошибка во время bitbake для создания пакета ROS для beaglebone

Я пытаюсь скомпилировать программу hello world из руководств по ROS в beaglebone black с помощью bitbake. Я использую ПК с Ubuntu и настроил рабочее пространство, как указано в руководстве пользователя, приведенном в vmayoral github link Я изменил файл local.conf в папке /build/conf, и его содержимое выглядит следующим образом

DL_DIR = "${OEBASE}/sources"
BBFILES = "${OEBASE}/openembedded/recipes/*/*.bb" 
ASSUME_PROVIDED += "help2man-native"
PREFERRED_PROVIDERS = "virtual/qte:qte virtual/libqpe:libqpe-opie"
PREFERRED_PROVIDERS += " virtual/libsdl:libsdl-x11"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-intermediate:gcc-cross-intermediate"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"
PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"
MACHINE = "beaglebone"
DISTRO = "angstrom-2008.1"
IMAGE_FSTYPES = "jffs2 tar"
BBINCLUDELOGS = "yes"

Рецепт bitbake, как показано ниже

DESCRIPTION = "Beginner_tutorials, talker/listener ROS package"
SECTION = "devel"
LICENSE = "MIT"
LIC_FILES_CHKSUM =     "file://package.xml;;beginline=16;endline=16;md5=05c8b019cf5b0834bc5e547a1 4f26ca3"
DEPENDS = "roscpp catkin rospy std-msgs"
RDEPENDS = "roscpp rospy std-msgs"
SRC_URI = "git://github.com/vmayoral/beginner_tutorials.git"
SRCREV = "${AUTOREV}"
PV = "1.0.0+gitr${SRCPV}"
S = "${WORKDIR}/git"
inherit catkin

Когда я запускаю bitbake test.bb из папки oe/build, я получаю следующую ошибку

ERROR: Traceback (most recent call last):File /home/srijit/oe/bitbake/lib/bb/cookerdata.py", line 175 in wrapped return func(fn, *args)File "/home/srijit/oe/bitbake/lib/bb/cookerdata.py", line 185, in parse_config_filereturn bb.parse.handle(fn, data, include) File "/home/srijit/oe/bitbake/lib/bb/parse/__init__.py", line 107, in handle return h['handle'](fn, data, include)File "/home/srijit/oe/bitbake/lib/bb/parse/parse_py/ConfHandler.py", line 145, in handle feeder(lineno, s, abs_fn, statements) File  "/home/srijit/oe/bitbake/lib/bb/parse/parse_py/ConfHandler.py", line 182, in feederraise ParseError("unparsed line: '%s'" % s, fn, lineno);ParseError: ParseError at home/srijit/oe/openembedded/conf/bitbake.conf:377: unparsed line: 'IMAGE_EXTRA_SPACE = 10240' ERROR: Unable to parse conf/bitbake.conf: ParseError at /home/srijit/oe/openembedded/conf/bitbake.conf:377: unparsed line: 'IMAGE_EXTRA_SPACE = 10240'

я не знаю что делать

Спасибо за помощь в продвижении


person Srijit    schedule 10.09.2015    source источник


Ответы (2)


По мере поиска в Google я нашел здесь, что мы не можем использовать последнюю версию bitbake с openembedded-classic. Итак, попробовал с bitbake 1.10, и эта ошибка исчезла. Но теперь у меня есть новая ошибка. это

Unknown Event: <bb.event.NoProvider instance at 0x7f05e40ee248>
ERROR: Nothing PROVIDES 'mobile-unit.bb'
Command execution failed: Traceback (most recent call last):
File "/home/srijit/oe/bitbake/lib/bb/command.py", line 88, in     runAsyncCommand commandmethod(self.cmds_async, self, options)
File "/home/srijit/oe/bitbake/lib/bb/command.py", line 174, in buildTargets command.cooker.buildTargets(pkgs_to_build, task)
File "/home/srijit/oe/bitbake/lib/bb/cooker.py", line 782, in buildTargets
taskdata.add_provider(localdata, self.status, k)
File "/home/srijit/oe/bitbake/lib/bb/taskdata.py", line 354, in add_provider
self.add_provider_internal(cfgData, dataCache, item)
File "/home/srijit/oe/bitbake/lib/bb/taskdata.py", line 383, in add_provider_internal
raise bb.providers.NoProvider(item)
NoProvider: mobile-unit.bb
person Srijit    schedule 10.09.2015
comment
Если у вас появилась новая ошибка (т. е. проблема не решена), не публикуйте ее как ответ, а лучше отредактируйте свой вопрос. - person luator; 11.09.2015
comment
Избегайте использования openembedded-classic для новых работ, если в этом нет особой необходимости. Все усилия разработчиков за последние несколько лет были направлены на openembedded-core и meta-openembedded. - person Anders; 11.09.2015

Наконец-то я решил проблему... подумал, что это будет полезно кому-то еще. Я думаю, что основная проблема заключалась в моей незрелости в понимании мета-слоя ROS и того, как он работает, а также в том, что общее (неправильное) направление установки ROS в BBB. Я пытался скомпилировать beagle-ros для дистрибутива Angstrom, поставляемого с BBB. В этом была проблема. На самом деле я загрузил последний исходный код дистрибутива Angstrom на свой ПК с Ubuntu и скомпилировал для BBB, как описано здесь. Несколько настроек здесь и там

Затем нам нужно прошить дистрибутив Angstrom на SD-карту и загрузить с нее BBB.

Затем следуйте приведенным здесь инструкциям, чтобы скомпилировать пакеты слоя beagle-ros и ros, используя ту же настройку bitbake, что и для Angstrom, как обсуждалось здесь и здесь< /а>

Теперь скопируйте скомпилированные файлы ipk на BBB и установите его с помощью opkg, и теперь вы можете запускать их на BBB.

person Srijit    schedule 15.09.2015