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

题记:在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挂载,就可以在板子上运行。



你可能感兴趣的:(开发板,海思,hi3518)