三星Cortex-A9 Exynos 4412处理器已成功应用于三星GALAXY S3,联想K860,魅族MX2等热门手机产品当中,四核CPU,四核GPU,双通道内存,性能稳定,功耗均衡,软件资源丰富。Electron基于Node.js,提供了丰富的本地(操作系统)的API,使你能够使用纯JavaScript来创建桌面应用程序。本文介绍在迅为iTop-4412开发板上进行electron的安装与相关设置。
开发板选择理由
1. 4412处理器性能与功耗均衡,软件资源丰富;
2. 三星核心版尺寸小巧,仅为50mm x 60mm;
3. 支持1920x1080p的分辨率;
4. 支持HDMI与LVDS硬件输出;
5. 提供ubuntu软件平台。
硬件设置启动
根据说明手册(电子版),HDMI连接TV,网口接入网络,插入tf卡,PC串口连接UART2接口,PC机tty终端设置串口为115200速率,其他默认,加电启动。
tty终端中操作具体步骤如下:
1)给TF卡分区格式化。
先将TF卡插入开发板,然后启动开发板,进入Uboot模式, 给TF卡分区,具体操作如下:
如下图所示,输入命令“fdisk -c 1 2700 100 100”;
如下图所示,输入命令“fatformat mmc 1:1”;
如下图所示,输入命令“ext3format mmc 1:2”;
如下图所示,输入命令“ext3format mmc 1:3”;
如下图所示,输入命令“ext3format mmc 1:4”;
2)将TF接入PC机的Ubuntu系统,系统识别TF卡后,在Ubuntu命令行中输入 Linux命令“df -l”,该命令可以查看到TF卡的盘符,TF卡盘符在前一步中已经分成四个 区,这里会显示有四个新的TF卡盘符。需要注意的是,在这四个分区中,用户将要使用的是 2.7G 大小的 TF 卡盘符,这个 2.7G 大小的盘符名在下一步中将要用到。
3) 拷贝以下文件至2.7G的分区中。
iTOP4412_ubuntu_12.04_for_HDMI_20141230.tar.gz
4) 使用解压命令“tar -xvf xxxx.tar.gz”解压压缩包文件。
5) 解压缩完成后,将tf卡连接到window系统,在TF卡上建立文件夹 “sdupdate”,拷贝“u-boot-iTOP-4412.bin”,“zImaga_sd”和“zImage”三个文件到TF卡的文件夹“sdupdate”中。
6)先将TF卡插入开发板,再启动开发板,进入uboot模式,给eMMC分区和烧写镜像,具体操作如 下: 在超级终端中,执行下面命令,类似前面的操作。
#fdisk -c 0 2700 300 300;
#fatformat mmc 0:1;
#ext3format mmc 0:2 ;
#ext3format mmc 0:3 ;
#ext3format mmc 0:4 。
分区完成之后,在超级终端中,执行下面烧写uboot的命令。
#sdfuse flash bootloader u-boot-iTOP-4412.bin,如下图所示。
7)如下图所示,烧写sd卡启动的内核#sdfuse flash kernel zImage_sd;
8) 重启开发板后,开发板会从tf卡启动运行Ubuntu系统。
9) 使用cp命令将tf卡中压缩包拷贝的eMMC为2.7G盘符中,一般为“/dev/mmcblk0p2”,并将压缩包解压到当前目录中。
10) 在解压缩完成后,重启开发板,进入uboot模式,将内核镜像“zImage”烧写到eMMC中,命令为:#sdfuse flash kernel zImage。
最后取出tf卡,重启开发板,Ubuntu系统就可以在开发板上运行了。
修改root密码
#passwd root
安装SSH
#apt-get install openssh-server
最新版本的electron为1.4.15,node.js为6.5.0,软件需要gcc与g++为版本4.8以上,clang需要版本3.4以上,ubuntu 12需要进行必要的升级。
升级gcc4.8和g++4.8
步骤如下:
1) tty终端内,执行adding PPA to your repositories;
#add-apt-repository ppa:ubuntu-toolchain-r/test
#apt-get update
2) 安装gcc 4.8 和 g++ 4.8;
#apt-get install gcc-4.8 g++-4.8
3) 装完后,依次执行如下命令将系统默认的gcc,g++编译器版本设置为4.8版本
#update-alternatives –remove-all gcc
#update-alternatives –remove-all g++
#update-alternatives –install /usr/bin/gcc gcc /usr/bin/gcc-4.8 20
#update-alternatives –install /usr/bin/g++ g++ /usr/bin/g++-4.8 20
#update-alternatives –config gcc
#update-alternatives –config g++
#g++ –version
#gcc –version
升级clang 3.4
1) 下载预编译好的文件
clang下载页面:http://releases.llvm.org/download.html#3.4
下载clang arm版本:http://releases.llvm.org/3.4/clang+llvm-3.4-armv7a-linux-gnueabihf.tar.gz
2) 解压,进入目录
#tar zxvf clang+llvm-3.4-armv7a-linux-gnueabihf.tar.gz
#cd clang+llvm-3.4-armv7a-linux-gnueabihf
3) 拷贝至/usr/
#cp -R * /usr/
4) 修改c++链接
#ln -s /usr/bin/clang++ /etc/alternatives/c++
升级libnss3-1d
编辑/etc/apt/sources.list 文件中像下面这样添加一行:
deb http://ports.ubuntu.com/ubuntu-ports/ precise-updates main
保存后#apt-get update
#apt-get install libnss3-1d
下载设置node.js
目前electron的最新稳定版为1.4.15,内部使用node.js为6.5.0,为其兼容性,则外部node.js也下载使用6.5.0版本。
#wget https://nodejs.org/dist/v6.5.0/node-v6.5.0-linux-armv7l.tar.gz
#tar zxvf node-v6.5.0-linux-armv7l.tar.gz
#mv node-v6.5.0-linux-armv7l node
#export PATH=$PATH:/root/node/bin
#node -v 查看nodejs版本
#npm -v 查看npm版本
设置npm国内镜像
#npm –registry https://registry.npm.taobao.org info underscore
或者编辑 ~/.npmrc加入下面内容registry https://registry.npm.taobao.org
#export ELECTRON_MIRROR=https://npm.taobao.org/mirrors/electron/
electron快速开始
1) 进入图形用户目录下载快速开始脚本
# cd /home/linaro/
# apt-get install git
# git clone https://github.com/electron/electron-quick-start
2) 进入目录
# cd electron-quick-start
3) 开始安装
# npm install
注意node目录的权限,有需要请修改。
4) 在图形桌面中运行示例
# apt-get install libxss-dev
# npm start
若electron做为node.js的一部分也可以前往https://github.com/electron/electron/releases下载arm版本的electron直接使用,但是需要注意权限设置;
中国镜像为:
https://npm.taobao.org/mirrors/electron。