2014-11-21 36 views
0

我遇到的问题是,我试图从零开始使用bitbake构建一个Angstrom图像(因为Angstrom现在是Yocto兼容),但是当我运行时我遇到了一个错误bitbake systemd-image构建Angstrom的bitbake问题

Traceback (most recent call last): 
    File "/usr/bin/bitbake", line 234, in <module> 
    ret = main() 
    File "/usr/bin/bitbake", line 197, in main 
    server = ProcessServer(server_channel, event_queue, configuration) 
    File "/usr/lib/pymodules/python2.7/bb/server/process.py", line 78, in __init__ 
    self.cooker = BBCooker(configuration, self.register_idle_function) 
    File "/usr/lib/pymodules/python2.7/bb/cooker.py", line 76, in __init__ 
    self.parseConfigurationFiles(self.configuration.file) 
    File "/usr/lib/pymodules/python2.7/bb/cooker.py", line 510, in parseConfigurationFiles 
    data = _parse(os.path.join("conf", "bitbake.conf"), data) 
TypeError: getVar() takes exactly 3 arguments (2 given) 
ERROR: Error evaluating '${TARGET_OS}:${TRANSLATED_TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:${CLASSOVERRIDE}:forcevariable${@bb.utils.contains("TUNE_FEATURES", "thumb", ":thumb", "", d)}${@bb.utils.contains("TUNE_FEATURES", "no-thumb-interwork", ":thumb-interwork", "", d)}' 
Traceback (most recent call last): 
    File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 116, in expandWithRefs 
    s = __expand_var_regexp__.sub(varparse.var_sub, s) 
    File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 60, in var_sub 
    var = self.d.getVar(key, 1) 
    File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 260, in getVar 
    return self.expand(value, var) 
    File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 132, in expand 
    return self.expandWithRefs(s, varname).value 
    File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 117, in expandWithRefs 
    s = __expand_python_regexp__.sub(varparse.python_sub, s) 
TypeError: getVar() takes exactly 3 arguments (2 given) 

ERROR: Error evaluating '${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[0] or 'defaultpkgname'}' 
Traceback (most recent call last): 
    File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 117, in expandWithRefs 
    s = __expand_python_regexp__.sub(varparse.python_sub, s) 
    File "/usr/lib/pymodules/python2.7/bb/data_smart.py", line 76, in python_sub 
    value = utils.better_eval(codeobj, DataContext(self.d)) 
    File "/usr/lib/pymodules/python2.7/bb/utils.py", line 387, in better_eval 
    return eval(source, _context, locals) 
    File "PN", line 1, in <module> 
TypeError: getVar() takes exactly 3 arguments (2 given) 

我一直在这一段时间,现在在不同的网站上搜索。最初我尝试了在Angstrom网站的开发人员部分的指南,但是一旦我收到了一些错误(在此之前,我在这里),我发现Derek Molloy的网站http://derekmolloy.ie/building-angstrom-for-beaglebone-from-source/解决了这些错误,并给了更多的细节该过程。

最终我偶然发现了另一个论坛帖子,它描述了我的问题,但不幸的是,答案并不十分清楚(无论如何)http://comments.gmane.org/gmane.linux.distributions.angstrom.devel/7431。我对可能出错的事情感到不知所措,而且我对Yocto项目非常陌生,所以我不确定是否缺少任何步骤或隐含的内容,因此我非常感谢任何人我在这个正确的方向。作为备注,我一直认为它可能与我所使用的环境 - angstrom -...文件有关,因为我的环境-angstrom-v2013.12和所有其他示例使用以前的版本,我想知道是否有一个新的步骤涉及工作与此。

回答

1

是否有原因使用系统级bitbake而不是与该版本的Angstrom兼容?

+0

基本上我想学习如何使用yocto,更具体BitBake的,从已经安装项目。我的最终目标是将Linux映像放入定制的嵌入式主板(实际上是一个Variscite VAR-SOM-AM33系统模块) – jobenas 2014-11-22 02:43:18

+0

对于该版本使用相应的bitbake。 – 2016-02-04 17:13:06

0

不要使用系统范围的bitbake,因为bitbake API可以并随时间发生变化。使用相应的bitbake来释放埃。

(这是打破因为你需要bitbake的getVar采取三个参数,但你的埃层只有经过二)