海思hi3518用eclipse采用交叉编译器编译程序在海思开发板上运行

来源:互联网 发布:伪装邮件地址 软件 编辑:程序博客网 时间:2024/04/30 18:08

题记:在linux下开发C/C++程序时,eclipse是一款不错的IDE软件,在eclipse开发运行在linux系统下的程序时,用到

的编译工具莲是linux gcc,而如果要将eclipse开发的程序移植到开发板上,则要选择海思自己的编译器,否则执行会出现问题,这里详细介绍下过程。

1 正确安装海思的交叉编译器。海思给了两个交叉编译器分别是

arm-hisiv100nptl-linux、还是arm-hisiv200-linux。前者是uclib,搞出的文件系统小,建议选择这个。具体安装过程不再详细介绍,海思SDK会给提供。

2 新建一个c++工程,选择cross gcc,然后next

3  next之后,会出现下图,正确选择交叉编译器的路径。如果不知具体在那,可以利用命令:which arm-hisiv100nptl-linux-g++去查找


4 finish之后,会出现includes 表示成功


5 然后再写个小的main.cpp 测试程序,我这里是用了原来练习的一个程序

/*#include <iostream>using namespace std;class Cbox{private:int m_width;int m_height;int m_length;public:void getData(int w,int h,int l);int volume(void);};void Cbox::getData(int w,int h,int l){m_width=w;m_height=h;m_length=l;}int Cbox::volume(void){return m_width*m_height*m_length;}int main(void){//定义一个该类对象和一个指向该类对象的指针Cbox box;Cbox *pbox;pbox=&box;int box_w,box_h,box_l;cout<<"请输入三个整数:"<<endl;cin>>box_w>>box_h>>box_l;pbox->getData(box_w,box_h,box_l);cout<<"该箱子的体积是:"<<pbox->volume()<<endl;return 0;}*/#include <iostream>#include <stdio.h>using namespace std;class Cbox{private:int m_width;int m_height;int m_length;public:void getData(int w,int h,int l);int volume(void);};void Cbox::getData(int w,int h,int l){m_width=w;m_height=h;m_length=l;}int Cbox::volume(void){return m_width*m_height*m_length;}int main(void){//定义一个该类对象和一个指向该类对象的指针Cbox box;Cbox *pbox;pbox=&box;int box_w=2,box_h=3,box_l=4;//cout<<"请输入三个整数:"<<endl;//cin>>box_w>>box_h>>box_l;pbox->getData(box_w,box_h,box_l);//cout<<"该箱子的体积是:"<<pbox->volume()<<endl;printf("该箱子的体积是:%d",pbox->volume());return 0;}

运行工程后会生成执行程序。然后通过nfs挂载,就可以在板子上运行。



2 0