Intel Edision —— 开发环境选择一贴通
前言
原创文章,转载引用务必注明链接。如有疏漏,欢迎斧正。
使用Intel开发板设置工具配置好之后,会自动跳转到集成开发环境(integrated development environment,IDE)选择界面,面对其提供的诸多工具,相信大家都会有个疑问,每种工具之间有何不同?哪一个更适合我呢?本文旨在回答这些问题。
官方推荐IDE介绍
Intel XDK 物联网版
Intel XDK 物联网版类似 Eclipse,该工具面临的问题是,使用 node.js/html5 的几乎都是 web 工程师,intel XDK 可以看作是一个针对web 程序员推出的物联网开发方案,但国内很少有嵌入式工程师使用 javascript 开发程序。如果你想要更多地使用Web前端来交互,搭建物联网应用,那么就非常适合。推荐学习ES6。
Arduino IDE
Intel Edison 接插 Arduino breakout board 后,即可使用 Arduino 开发方式,但由于底层架构不同,存在诸多库不兼容的问题。 不过由于Seeed等公司的支持,越来越多的常见模块都可以正常使用了。
由于 Edison 通过 Arduino 开发方式能完成的功能,直接使用几十块钱的 Arduino 开发板也可以完成,Arduino 开发方式一直受到诟病。
可以肯定的是,兼容 Arduino 开发方式,让 Edison 获得更多爱好者的关注,但这种开发方式,并不能发挥 edison 的优势。
Intel System Studio 物联网版
Eclipse是全球最流行的 IDE 之一,intel 在 eclipse 基础上集成了 edison 相关工具,打造出Intel System Studio物联网版,使得开发者可以使用 C/C++,Java开发 edison 应用。内置UPM和MRAA库,可以方便地操作各种接口和各式传感器。
Python
Python 是一门广泛使用的脚本语言,并不需要特定的 IDE,edison 已经预装了 python 解释
器,只需要将写好的 python 脚本放到 edison 上,即可运行。
工具链(Tool Chain)
工具链(toolchain)是在每一个大型开放源码项目(包括 Linux 内核本身)背后默默支
撑的力量。它们由一组必要的工具和软件构成,用于编译和调试从最小的工具软件到你可以
想象的最复杂的具有 Linux 内核特征的各种软件。如果你曾经编写过 Linux 程序,那么你很
可能已用过了 GNU 编译器集(GCC),但要完成一个优秀的应用程序,要做的事情可比简单
的编译源代码多得多,你需要借助一个完整的工具集来做到这一点,这套工具集通常被称为
工具链。
工具链中包括编译器、连接器、汇编器以及调试器——用于跟踪所有程序(除了那些非
常简单的程序)中的不可避免的错误。此外,还有各种其他的工具用于在必要的时候控制应
用程序的二进制代码——例如,将 Linux 内核的二进制代码转换为机器的启动映像。绝大多
数的 Linux 应用程序都使用 GNU 的工具链来编译,该工具链由 GNU 工程中发行的工具构成。
详细介绍
已经做成了EXCEL表格,附件下载:链接:http://pan.baidu.com/s/1dFC0Rwl 密码:d0yg
总结
可以看到,Intel提供了从底层到上层针对不同水平目的的开发工具,根据项目与自身习惯,用户可以自己选择相应的开发方式。这种“下限低、上限高”的软件支持非常棒。
Intel Edison作为一款基于 x86 架构的开发板,由于其运行着 Linux这个全世界使用率最高的操作系统,无论是软件方面还是硬件方面都有着较强的兼容性和扩展性,也使其具有接近桌面 PC 的开发体验,熟悉 linux 的用户或者开发者可以迅速适应并开始工作。同时,Intel 方面提供的开发环境的成熟度也非常高,如果没有特殊的需求,不需要再进行繁杂的开发环境搭建。这一点非常重要,对于一个专业的开发者而言,自己从头搭建并调试完成一个开发环境本并不是一个没有难度或令人愉快的过程,而对 Edison 主要面对的普通 DIY 用户而言,更有可能成为阻碍使用 Edison 的第一个障碍。Intel 提供成熟度如此之高的开发环境,无疑是令人愉快的。
它不仅能帮助爱好者快速入门,也能给开发者留下一段愉悦的经历。而得益于其强大的硬件性能和 x86 架构的兼容性优势,其接近于桌面 PC 的开发体验,也使没有接触过嵌入式开发的上层开发人员能够以很小的学习代价和灵活的开发方式进行各种应用开发,因为其应用程序的开发和普通桌面 PC 的开发方式并没有太大区别,特别是对于一个 linux 开发人员而言。 事实上,因为 Linux 的原因,Edison 能够使用的开发环境和编程语言并不局限于以上罗列的种种,理论上来说,它几乎可以使用任何为 PC 设计的开发环境和编程语言。以上罗列只是最常用的几种,也是较为方便且有现成的开发环境的。你也可以移植其他任何现有的环境或者软件到 Edison 上,或者移植其他的操作系统。对于大部分 Linux 软件而言,因为 Edison 所使用的 x86 架构,你只需要做很小的更改或者根本不需要更改,就能将已有的软件编译并运行在Edison 上 。总而言之,Edison 是一款相对方便且强大的单板计算机。
内容主要来自ccechina,进行了部分增删核对。
Intel Edision —— 开发环境选择一贴通的更多相关文章
- OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置
摘要: 由于最近AR(增强现实)这个概念非常火爆,各种基于AR的应用及游戏逐渐面向大众,而在AR中最重要的两个技术就是跟踪识别和增强渲染,其中跟踪识别是通过OpenCV这个开源的计算机视觉库来实现的, ...
- Raspberry Pi3 ~ 搭建开发环境
关于树莓派的开发环境 纠结了一些时间 ,我的是raspberry Pi 3 mode b 在官网下载 noobs (raspbain 版本)的. 安装完成之后接上显示器 启动系统 然后最初我是想在这个 ...
- Python 全栈开发 -- 开发环境篇
开发环境是一个文本编辑器和 Python 解释器的组合.文本编辑器用来写代码,解释器提供了一种方法来运行编写的代码.一个文本编辑器可以像 Windows 上的 Notepad 一样简单,或是一个复杂的 ...
- javascript快速入门1--JavaScript前世今生,HelloWorld与开发环境
JavaScript历史 大概在1992年,一家称作Nombas的公司开始开发一种叫做C--(C-minus-minus,简称Cmm)的嵌入式脚本语言. Cmm背后的理念很简单:一个足够强大可以替代宏 ...
- [eShopOnContainers 学习系列] - 00 - 开发环境需求
开发环境需求 https://github.com/dotnet-architecture/eShopOnContainers/wiki/00.-Dev-machine-requirements 我的 ...
- OpenCV3.1.0+VS2015开发环境配置
摘要: 由于最近AR(增强现实)这个概念非常火爆,各种基于AR的应用及游戏逐渐面向大众,而在AR中最重要的两个技术就是跟踪识别和增强渲染,其中跟踪识别是通过OpenCV这个开源的计算机视觉库来实现的, ...
- windows下VisualStudio和QtCreator搭建Qt开发环境
一.简介 集成开发平台IDE都有各自的长处,编写Qt程序可根据自己的喜好来选择相应的IDE.下述文章都是装载博友的文章,其中有很多细节还得自己调整. 二.详解 1.VisualStudio搭建Qt开发 ...
- OpenCV+VS开发环境配置
最近跑C程序,头文件中用到了OpenCV中的文件,找了很多篇OpenCV+VS的环境配置,发现如下这篇写的最为详细,特转载来自己的博客中留存,并附上原博客地址如下 OpenCV学习笔记(一)——Ope ...
- Fedora15下安装Android开发环境
Fedora15下安装Android开发环境需要以下步骤: 完整步骤. 1. 安装正确版本的JDK. 2. 安装Eclipse. 3. 安装ADT. 4. 安装Android SDK. 5. 安 ...
随机推荐
- Hibernate的Session的get()和load()方法区别
hibernate中Session接口提供的get()和load()方法都是用来获取一个实体对象,在使用方式和查询性能上有一些区别. get Session接口提供了4个重载的get方法,分别通过“持 ...
- java 罕见的依赖报错 jstat: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory
java 都用了N长时间了,突然,意外地发现有一个依赖的so文件从来没找见过 # ldd /usr/bin/java linux-vdso.so.1 => (0x00007fffba76900 ...
- [转]常见linux命令用法介绍
su switch user 用途:用于用户之间的切换 格式: su - USERNAME切换用户后,同时切换到新用户的工作环境中 su USERNAME切换用户后,不改变原用户的工作目录,及其他环境 ...
- hdu6061[NTT推公式] 2017多校3
/*hdu6061[NTT推公式] 2017多校3*/ #include <bits/stdc++.h> using namespace std; typedef long long LL ...
- BZOJ 1015: [JSOI2008]星球大战starwar【并查集】
题目可以表述成:给定一个无向图G,每次删除它的一个点和与点相关的边集,每次询问该操作后图G的连通度(连通分量的个数).和上一题一样都是考察逆向思维,虽然删除点的做法不会,但是每次加点后询问连通度却是并 ...
- BZOJ2244 [SDOI2011]拦截导弹 【cdq分治 + 树状数组】
题目 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度.并且能够拦截任意速度的导弹,但是以后每一发炮弹都不能高于前一发的高度,其 ...
- [NOI2001] 食物链 (扩展域并查集)
题目描述 动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形.A 吃 B,B 吃 C,C 吃 A. 现有 N 个动物,以 1 - N 编号.每个动物都是 A,B,C 中的一种,但是我 ...
- spring5响应式编程
1.Spring5新特性 2.响应式编程响应式编程:非阻塞应用程序,借助异步和事件驱动还有少量的线程垂直伸缩,而非横向伸缩(分布式集群)当Http连接缓慢的时候,从数据库到Http数据响应中也会 ...
- C 语言中可以调用命令行指令的 system()函数
C语言有一个system函数(在<stdlib.h>头中,C++则为<cstdlib>头),可以用来调用终端命令.原型如下: int system(const char *cm ...
- iOS 收款计算器算法
一个收款计算器算法,从之前高仿有赞Demo里面抽离的一个界面 demo 在这里 https://github.com/L-vinCent/calculView_function 显示计算记录 不能连续 ...