bitbake为beaglebone创建ROS包时出错

bitbake为beaglebone创建ROS包时出错,ros,bitbake,Ros,Bitbake,我正在尝试使用bitbake将hello world程序的ROS教程编译成beaglebone black。我使用的是Ubuntu PC,并已按照中提供的用户手册中所述设置了工作区 我修改了/build/conf文件夹中的local.conf文件,内容如下所示 DL_DIR = "${OEBASE}/sources" BBFILES = "${OEBASE}/openembedded/recipes/*/*.bb" ASSUME_PROVIDED += "help2man-native" PR

我正在尝试使用bitbake将hello world程序的ROS教程编译成beaglebone black。我使用的是Ubuntu PC,并已按照中提供的用户手册中所述设置了工作区 我修改了/build/conf文件夹中的local.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
当我从oe/build文件夹运行
bitbake test.bb
时,我得到以下错误

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'
我不知道该怎么办


提前感谢您的帮助,因为我在谷歌上做了更多的搜索。。我发现我们不能将最新的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
未知事件:
错误:没有提供“mobile unit.bb”
命令执行失败:回溯(上次调用):
文件“/home/srijit/oe/bitbake/lib/bb/command.py”,第88行,在runasyncommand commandmethod(self.cmds\u async,self,options)中
文件“/home/srijit/oe/bitbake/lib/bb/command.py”,第174行,位于buildTargets command.cook.buildTargets(pkgs_-to_-build,task)中
文件“/home/srijit/oe/bitbake/lib/bb/coustor.py”,第782行,位于buildTargets中
taskdata.add_提供程序(localdata,self.status,k)
文件“/home/srijit/oe/bitbake/lib/bb/taskdata.py”,第354行,在add_provider中
self.add\u provider\u internal(cfgData、dataCache、item)
文件“/home/srijit/oe/bitbake/lib/bb/taskdata.py”,第383行,在add\u provider\u internal中
募集bb.providers.NoProvider(项目)
NoProvider:mobile-unit.bb

我终于解决了这个问题。。我想这会对别人有帮助。我认为主要问题是我对ROS meta ROS层及其工作原理的理解不成熟,以及在BBB中安装ROS的总体(mis)方向。我试图为BBB附带的Angstrom发行版编译beagle ros。这就是问题所在。 实际上,我在我的Ubuntu PC上下载了最新的Angstrom发行版源代码,并按照所述为BBB编译。这里和那里很少有调整

然后,我们必须将Angstrom分布闪存到SD卡,并从SD卡启动BBB

然后按照此处的说明,使用与为Angstrom编译相同的bitbake设置编译beagle ros层和ros包,如前所述和


现在将编译后的ipk文件复制到BBB并使用opkg安装,现在您可以在BBB上运行它们了

如果您有新的错误(即问题没有解决),请不要将其作为答案发布,但最好编辑您的问题。除非您真的必须这样做,否则请避免在新作品中使用openembedded classic。最近几年的所有开发工作都投入到openembedded core和meta openembedded中。