首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在yocto "thud“版本上为gumstix overo构建u-boot时遇到问题

在yocto "thud“版本上为gumstix overo构建u-boot时遇到问题
EN

Stack Overflow用户
提问于 2019-11-29 01:25:04
回答 2查看 269关注 0票数 1

在尝试使用" thud“发行版构建yocto镜像时,bitbake无法构建与meta-gumstix thud分支一起提供的u-boot版本,即2016.03 (这似乎很古老?)。

我看到的错误是关于冲突的类型,例如

代码语言:javascript
复制
ERROR: u-boot-v2016.03+gitAUTOINC+df61a74e68-r0 do_compile: oe_runmake failed 
…
/home/kwisatz/yocto-new/build/tmp/work/overo-poky-linux-gnueabi/u-boot/v2016.03+gitAUTOINC+df61a74e68-r0/recipe-sysroot-native/usr/include/libfdt_env.h:71:30: error: conflicting types for 'fdt64_t'                                                                                                                        
 typedef uint64_t FDT_BITWISE fdt64_t;           

在互联网上搜索它,很快就会遇到一系列解释问题的线索,这些线索解释说问题出在dtc包附带的libfdt-dev.h头文件上。有些人建议将dtc包列入黑名单或卸载,但在我看来,这是yocto的gumstix层中的u-boot配方明确要求的:

代码语言:javascript
复制
DEPENDS += "dtc-native"

另请参阅https://patchwork.openembedded.org/patch/147816/然而,在上面链接的帖子中,我们讨论的是版本2018.01和2018.03,而不是2016.03

thud的poky层带来了u-boot 2018.07,它构建得很好,但有了它,我的overo (Airstorm-Y)就不能再启动了:

代码语言:javascript
复制
Booting from nand with DTS...
UBI: attaching mtd1 to ubi0
UBI: scanning is finished
UBI: attached mtd1 (name "mtd=4", size 1013 MiB) to ubi0
UBI: PEB size: 131072 bytes (128 KiB), LEB size: 129024 bytes
UBI: min./max. I/O unit sizes: 2048/2048, sub-page size 512
UBI: VID header offset: 512 (aligned 512), data offset: 2048
UBI: good PEBs: 8108, bad PEBs: 0, corrupted PEBs: 0
UBI: user volume: 1, internal volumes: 1, max. volumes count: 128
UBI: max/mean erase counter: 1/0, WL threshold: 4096, image sequence number: 1485359018
UBI: available PEBs: 0, total reserved PEBs: 8108, PEBs reserved for bad PEB handling: 160
** File not found /boot/omap3-overo-storm-tobi.dtb **
Loading file '/boot/zImage' to addr 0x82000000 with size 5097744 (0x004dc910)...
Done
Kernel image @ 0x82000000 [ 0x000000 - 0x4dc910 ]
ERROR: Did not find a cmdline Flattened Device Tree
Could not find a valid device tree

我不能完全确定这个引导问题是与u-boot构建有关,还是与我构建的内核映像有关(参见我之前的线程)?

关于如何解决这个问题,有什么建议吗?有没有我还没有发现的适用于yocto的gumstix层中更新版本的u-boot,或者你有任何其他的技巧可以让我的overo得到一个工作的yocto镜像吗?

附注:注意,在构建过程中,我也看到了这些警告,但我认为这并不是真正的问题:

代码语言:javascript
复制
WARNING: u-boot-v2016.03+gitAUTOINC+df61a74e68-r0 do_patch:                                                                                                                                                                                                                                                                    
Some of the context lines in patches were ignored. This can lead to incorrectly applied patches.                                                                                                                                                                                                                               
The context lines in the patches can be updated with devtool:                                                                                                                                                                                                                                                                  

    devtool modify <recipe>                                                                                                                                                                                                              
    devtool finish --force-patch-refresh <recipe> <layer_path>                                                                                                                                  

Then the updated patches and the source tree (in devtool's workspace)                                                                                                                                     
should be reviewed to make sure the patches apply in the correct place                                                                                                                                                                                                                                                         
and don't introduce duplicate lines (which can, and does happen                                                                                                                                                                                                                                                                
when some of the context is ignored). Further information:                                                                                                                                                                                                                                                                     
http://lists.openembedded.org/pipermail/openembedded-core/2018-March/148675.html                                                                                                                                                                                                                                               
https://bugzilla.yoctoproject.org/show_bug.cgi?id=10450                                                                                                                                                                                                                                                                        
Details:                                                                                                                                                                                                                                                                                                                       
Applying patch 0006-duovero-Read-eeprom-over-i2c.patch                                                                                                                                                                                                        
patching file board/gumstix/duovero/duovero.c                                                                                                                                                                                                                                                                                  
patching file include/configs/duovero.h                                                                                                                                                                                                                                                                                        
Hunk #2 succeeded at 50 with fuzz 2 (offset -4 lines).                                                                                                                                                                                                                                                                         

Now at patch 0006-duovero-Read-eeprom-over-i2c.patch            
[…]
EN

回答 2

Stack Overflow用户

发布于 2019-11-30 02:39:11

如果你正在为Overo寻找一个新的(开发中的,而不是稳定的)图像,我会推荐Warrior分支

https://github.com/gumstix/yocto-manifest/tree/warrior

它已经被测试并确认在Overo上工作。Thud分支被添加到我们的存储库,以添加对Raspberry Pi CM3+的支持。对于较旧(稳定)的图像,我推荐Morty

https://github.com/gumstix/yocto-manifest/tree/morty

谢谢。

票数 0
EN

Stack Overflow用户

发布于 2020-01-15 03:27:57

至少对我来说,对于同样的问题,我刚刚删除了

依赖于+= "dtc-native“

并且构建完成。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59093849

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档