基于海思开发板进行OPENCV交叉编译时的问题

来源:互联网 发布:业务数据运维管理规范 编辑:程序博客网 时间:2024/05/16 06:44

之前一直在摸索,为什么使用海思3515官方提供的编译器在对opencv进行交叉编译时会出现各种莫名其妙的错误。后来买了一块3520D的开发板,商家为我提供了新版的SDK,编译器版本升级为4.4.1。当我用新版的编译器再进行交叉编译时,竟然一路顺畅,很容易地就完成了整个编译过程。再回过头来,反省之前遇到的各种问题,发现其实最大的问题出在编译器版本上。在旧版的SDK里,编译器版本为gcc 3.4.3,这已经是很老的编译器版本了。再这个版本下,我费了很大力气最终完成了opencv的交叉编译,生成了动态链接库。却发现还是无法完成基于opencv的样例程序编译,因为提示lrint函数未定义。后来查询,该函数的确在低版本的gcc里是没有定义的。

而之前,我不是没有考虑换掉交叉编译器的,我跟当时的板子提供商沟通时,他给的说法是,不能换,只能用原版提供的!同时,身边也没有现用的3520SDK,也就没有尝试其他的编译器了。之后,在购买3520时,淘宝商家给的答案竟然是,3515/3518/3520竟然是同一个SDK!也就是说,3515是可以用3520SDK里面的gcc4.4.1编译器的!

到现在,只能说自己还是太懒了,怪自己没有去尝试下这种可能性。学技术,就是一个不断是错的过程。继续加油吧!希望这篇博文能给遇到同样问题的朋友一些帮助。

由于时间仓促,文章就到此为止吧。等有空,再将文章重新润色补充。

0 0
原创粉丝点击