繁体   English   中英

用于构建Angstrom的bitbake问题

[英]Issues with bitbake for building Angstrom

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

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项目非常陌生,因此我不确定是否遗漏了任何步骤或我忽略了一些隐含的内容,因此我深表感谢任何可以指出的人我在正确的方向上。

作为旁注,我一直认为这可能与我所拥有的environment-angstrom -...文件有关,因为我的文件是environment-angstrom-v2013.12,所有其他示例都使用以前的版本,我想知道在进行此操作时是否涉及新的步骤。

为什么要使用系统范围的Bitbake,而不是与Angstrom版本兼容的原因?

不要使用系统范围内的Bitbake,因为bitbake API可以并且确实会随着时间而变化。 使用相应的bitbake释放该埃。

(这很麻烦,因为您的位烘烤要求getVar接受三个参数,但您的埃斯特层仅传递两个参数)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM