Hi Yaojun,
首先,从yocto里导出来的tool chain是标准的编译工具链,只是在为了支持单机操作方式,在工具链中,都配置好一个环境配置脚本,只要在u-boot/kernel单机编译前,用source运行一下这个环境脚本,就给你配置好了。
其次,你要让buildroot找到编译的工具链路径,你要仔细地给bootroot配置一下,一般tool chain安装的路径都在/opt/下,路径配置对了,应该是没问题的。
【注释】
一般来说有些工程师不使用yocto,而要使用buildroot,可能是担心yocto编译时间太长,不方便。但是,如果你熟悉了yocto之后,速度也是非常快的。 以下给你参考:
1. 使用Yocto时,你可以这样做:
一般来说,rootfs编译一次就不用在编译了。对于移植来说,重要的是修改u-boot和device tree。
修改完u-boot和修改完device tree,可以这样做:
---bitabke u-boot-imx -f -c compile
---bitbake u-boot-imx -f -c deploy
---bitabke linux-imx -f -c compile
---bitbake linux-imx -f -c deploy
这样时间不长,你修改好的u-boot和device tree(包括内核)都会到image里,然后你就可以烧写了。
2. 单机模式
--按照linux文档(user's guide 或者porting guide)的方法,建立u-boot和kernel 源码路径。
--导出来编译工具链
--修改u-boot、deivce tree做移植。
用传统方法编译u-boot和内核,单独编译dts,可以用make dtbs。
这样的话,过程就是这样的:
u-boot,dts,kernel用单机模式
rootfs用yocto编译一次即可。
Have a nice day!
B.R,
weidong