codeblocks无法编译运行_尝试codeblock实现Hi35xx的交叉编译

刚开始接触linux下Hi35xx的交叉编译,对于makefile的使用感觉实在太头疼,不懂makefile语法,对Hi35xx的工程也不了解,有时连头文件都找不到,所以对集成开发环境就特别的渴望。

在一次收集资料过程中,发现有linux下的codeblocks交叉编译的文章,于是对集成开发环境开发Hi35xx的热情重新被点燃,如图(1)。

773aa1010a183f3f312c9fafe2465c4a.png

图(1)

下面是在linux下使用codeblocks进行交叉编译的一些尝试,通过图(2)中的命令安装codeblocks,主要关注第7行的命令,再输入codeblocks即可运行。

363f2d76a0538022a9f1cf70fb7aeb27.png

图(2)

在ubuntu下的codeblocks新建工程,编译sample,还存在如下红色部分错误,应该是找不到对应的源文件,需要解决,再找到交叉编译器的路径并进行combile配置,那么应该可以实现codeblocks交叉编译开发Hi35xx(至少刚开始的时候是这么认为的),如图(3)。

b507665f9f4447c830cb7a853da6dc31.png

图(3)

想方设法,把报错缺少的一些资源放到能找到的路径里,再次编译下,勉强能够找到这些文件,但是却又爆出下面这个问题,SENSOR0_TYPE找不到,没有定义,如图(4),对这个SENSOR0_TYPE也不理解是什么,当然后来知道,这是镜头的类型,比如是200万像素的镜头,还是800万像素的镜头。

bdc0377f08c135e01cd30d03939d76fb.png

图(4)

在单片机和linux开发里,朱有鹏老师的视频很有名,在他的教程里,提到海思SDK里的MPP中有很多的工程实例,如图(5),MPP中的实例会调用很多API函数,而API函数又封装在ko库里。

d36055106e8bbae0b900c18b4bb61eca.png

图(5)

比如图(6) common中的sample_comm_venc.c需要调用MPP中的HI_MPI_SYS_SetMemConfig,但是却不存在,那是因为海思把这些API函数封装在ko库里了,而codeblocks又没法加载这个库,那么就歇菜了。

a1d5a0f4ab93350d6092e85eeb04ca30.png

图(6)

codeblocks不能加载ko文件,那么真的是没办法用codeblocks做hi35xx的开发了。所以啊,目前情况来看,想要通过集成开发环境来进行Hi35xx进行交叉编译开发,那应该可能是不大了,还是乖乖地通过makefile进行工程开发吧,不要再有什么异想。

以上内容,是个人在开发过程中经验与技巧的分享,或许存在不到之处,仅供参考!

914025093cb49da1022437330f5f08d8.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值