明远智睿技术论坛

标题: 交叉编译器版本(4.6/4.9)问题 [打印本页]

作者: JDLYyear    时间: 2016-11-2 16:58
标题: 交叉编译器版本(4.6/4.9)问题
我前段时间在电脑上配置安装了LTIB,用的BSP版本:L3.0.35_4.1.0_130816_source.tar.gz,安装成功之后,LTIB 自动安装了arm-linux-gcc,版本是4.6,但是我最近为了使用4路摄像头,连接了tw6865,所以按照网盘资料重刷了板子系统uImage-myimx6ek200-tw68,重新启动板子后,发现了下面的打印信息:
Starting kernel ...

Linux version 3.0.35 (tangb@u12045-serv) (gcc version 4.9.2 20140904 (prerelease) (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09) ) #2 SMP PRE


这个应该说明uImage-myimx6ek200-tw68内核使用的arm-linux-gcc-4.9编译的?而我pc上的还依然是arm-linux-gcc-4.6。目前来看,我测试了一下,在pc下使用arm-linux-gcc-4.6编译的程序在板子里还能运行(也许是运气好),但是由于二者版本不一样,怕以后会出现问题。我想了几个办法,不知是否可行:
1、贵公司是否有使用arm-linux-gcc-4.6编译的系统并且支持tw6865的,如果有,能否提供一下。
2、我给pc安装arm-linux-gcc-4.9来替代原来LTIB自动安装的arm-linux-gcc-4.6,但是这样的话,使用4.9版本的arm-linux-gcc调用原来LTIB编译出来的库(比如gpu等需要的库)不知道是否会出现问题?(我觉得会出问题,毕竟这些库都是使用arm-linux-gcc-4.6编译出来的)
3、继续给pc使用arm-linux-gcc-4.6,板子是arm-linux-gcc-4.9,这样可以吗?(类似鸵鸟算法)
4、希望您能提供一个更好的解决方案。
谢谢!




作者: 唐斌    时间: 2016-11-2 17:44
1. 网盘里 uImage-myimx6ek200-tw68 就是,暂时没有其它gcc版本编译的。
2. 如果对 Linux-3.0.35 系统没有特殊要求,使用 gcc-4.6.2 的交叉编译工具即可。不需要使用 gcc-4.9。
3. 继续使用 gcc-4.6 编译你的 image 就行。不必使用 gcc-4.9。
4. 使用 gcc-4.6 就行。

作者: JDLYyear    时间: 2016-11-2 21:19
软件02 发表于 2016-11-2 17:44
1. 网盘里 uImage-myimx6ek200-tw68 就是,暂时没有其它gcc版本编译的。
2. 如果对 Linux-3.0.35 系统没有 ...

就是说:
板子上的uImage-myimx6ek200-tw68虽然是用arm-linux-gcc-4.9编译的,但是我依然可以在PC机上使用arm-linux-gcc-4.6编译我开发的程序,下载到板子上运行。(即4.9能够向下兼容4.6)
是这个意思吗?
谢谢!
作者: 唐斌    时间: 2016-11-3 10:07
JDLYyear 发表于 2016-11-2 21:19
就是说:
板子上的uImage-myimx6ek200-tw68虽然是用arm-linux-gcc-4.9编译的,但是我依然可以在PC机上使 ...

可以用 gcc-4.6 编译应用。不过你说的向下兼容并不是完全兼容,但通常不会有很大的影响。
另外,如果你心里不踏实,也可以用 gcc-4.6 重新编译内核(make myimx6_tw68_defconfig)。




欢迎光临 明远智睿技术论坛 (http://bbs.myzr.com.cn/) Powered by Discuz! X3.2