9742| 4
|
[教程] 菜鸟入门edison系列(五):本机编译和交叉编译 |
接:菜鸟入门edison系列(四):Edison固件更新 https://mc.dfrobot.com.cn/forum.php?mod=viewthread&tid=12549&fromuid=72181 本机编译和交叉编译: 首先我们准备交叉编译工具,下载地址:https://software.intel.com/zh-cn/iot/hardware/edison/downloads 下载的文件名:edison-sdk-linux64-ww25.5-15.zip 这里我存放在目录:~/Documents 为了能让当前的计算机系统包含软件开发相关的工具和代码库,输入下面的命令: sudo apt-get install make automake gcc g++ build-essential gcc-multilib 我电脑里面已经安装了: 上面我们已经安装过很多解压命令了,这里不再继续安装,直接对下载好的交叉工具软件包进行解压: 加压后我们会得到一个文件夹:edison-sdk-linux64-ww25.5-15 进入这个文件夹,发现里面有个.sh格式的可执行文件: 我们直接运行这个可执行文件: 如果不希望改变SDK的目录安装位置,直接回车完成整个脚本的执行就行了,默认将安装到目录:/opt/poky-edison/1.7.2 (最后的1.7.2根据下载版本的不同会有不同),我们进入安装目录: 安装目录里面有个配置文件,配置在交叉编译的时候需要用到的各种具体工具,为了方便在交叉编译的时候不至于一个个找,我们运行下面的命令,配置一下环境: source environment-setup-core2-32-poky-linux 下面我们交叉编译第一个程序: 更具自己习惯选用编辑器编辑一个main.cpp程序,这里我用的是vim 这里我将程序放在目录:~/edison_software 开始交叉编译,下面两种命令都可以: 1.i586-poky-linux-g++ main.cpp -o hello_edison_cross 2.$CXX main.cpp -o hello_edison_cross (这里就是前面配置环境变量的作用) 编译完成后就会生成一个可执行文件 hello_edison_cross,我之前就编译过一次,这里我们来看一下文件的类型,用命令file hello_edison_cross,会发现是Intel 80386,这个程序在开发机中是无法运行的,你可以试试。 下面我们需要将编译好的可执行程序放到edison里面运行,方法很多,这里使用工具filezilla,首先我们在开发机中安装这个工具: sudo apt-get install fillzilla (我电脑上已经安装过了) 我们将程序导入到edison里面,具体目录/home/root,我们先查看一下,用screen功能登陆edison里面的linux,前面已经做过介绍,这里没有文件: 打开工具,直接在开发机端输入:filezilla 软件打开界面: 最上面的四个输入框口我们输入前面三个就行了,端口可以用默认的,具体输入看下面,是不是很熟悉,这就是我们在一开始板子配置时候设置的一些参数: Host:sftp://192.168.0.130 Username: jason Password: 12345678 输入完成后点击右上方的Quickconnect,连接成功后显示下面界面: 为了在这里操作方便,我将可执行文件hello_edison_cross复制了一份到根目录下,找到这个文件,双击就会执行上传程序,完成后会软件上面窗口会提示successful,可以对比上面的图片进行查看 我们在回到之前登陆的edison的linux终端窗口进行查看,会发现多了文件:hello_edison_cross 在执行文件之前先修改一下文件权限,在edison登陆终端里面输入命令: Chmod +x hello_edison_cross 然后输入执行命令:./hello_edison_cross 最终我们在edison登陆终端看到输出:hello world from cross-compiled Edison App 至此,本机编译交叉编译程和程序下载已经完成! |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed