Anda di halaman 1dari 15

CCH BIN DCH V CI T CHO KIT FRIENDLY ARM

I. NP NHN CHO KIT FRIENDLY ARM:


1.

Cc file cn thit:

C th ti cc file cn thit ti: http://www.friendlyarm.net/downloads chn


bn ph hp cho kit friendly arm.
-

rootfs_qtopia_qt4.img

zImage

FriendlyARM.ini

ramdisk-u.img

system.img

2.

Phn mm h tr: SD-Flasher.(ch h tr window 7)

3.

Cc bc tin hnh:

a.

Thao tc trn window 7.

Bc 1: M SD-flasher.exe ln sau chn phin bn friendly arm ph hp.


(v d y chn mini4412/tiny4412 cho kit tiny 4412)
-

Nhn Next.

Sau xut hin giao din:

Nhn Relayout. Sau nhn Scan s xut hin th SD nh hnh.

Ti Image file to Fuse chn superboot4412.bin

Nhn Fuse. File superboot4412.bin s c ghi vo SD.

Bc 2: Tao th mc images. Trong th mc image to th mc


linux.
-

Cc file: ramdisk-u.img, zImage, system.img trong th mc linux.


( .../images/linux )

Cc file: rootfs_qtopia_qt4.img, FriendlyArm.ini trong th mc


images. (.../images )

Copy ton b th mc images ln th SD.

b.

Thao tc trn linux.

Bc 1: M file sd:/images/FriendlyArm.ini v sa li nh sau:

Bc 2: Gn th SD vo Tiny 4412. Ko cng tc S2 v NOR. Bt cng


tc ngun v chng trnh s t np.

Bc 3: i chng trnh chy xong gt cng tc S2 v NAND, Reset


board, h thng s vo linux. Sau cn mt s vic nh nh set time ....
II. CI T ARM-LINUX-GCC. (ARM-LINUX-GCC-4.5.1)
Ta lun lm vic ch root. Dng lnh sudo nautilus vo th mc h thng
ca linux.
Bc 1: Gii nn file source arm-linux-gcc-4.5.1.tar.gz
Kt qu gii nn c th mc cha trnh bin dch c ng dn nh
sau: opt/FriendlyARM/toolschain/4.5.1/bin
Bc 2: Copy th mc FriendlyARM t trong th mc /opt ca File System trn
my tnh Linux.V tr trnh bin dch cho l khng bt buc, tuy nhin thng
cha trn th mc /opt thun tin cho cc cng vic tip theo.
Bc 3: Cp nht bin mi trng PATH cho trnh bin dch cho
- Mc ch: Cp nht bin mi trng ca Linux OS cho trnh bin dch cho c
th s dng trc tip mi ni (Gi lnh trn cc ca s lnh m khng cn
chuyn n th mc cha)
- Thc hin: M file ~/.bashrc bng trnh son tho thch hp (gedit, vi, vim, ).
(Ch : file nm trong th mc tng ng ca ngi dng, v d /home/thuan. Mc
nh b n. Ta dng Ctrl + h hin th file n trong linux)

Thm 1 dng vo cui file .bashrc


PATH=$PATH:[ng dn ti th mc bin ca arm-linux-gcc]
VD: PATH=$PATH:/opt/FriendlyARM/toolschain/4.5.1/bin
Lu v ng file .bashrc. Sau khi thit lp bin mi trng cn tt ca s
terminal, m ca s mi thit lp c hiu lc.
Bc 4: Kim tra:
Kim tra kt qu thit lp bng cch g lnh: arm-linux-gcc --version
Thng bo v phin bn ca trnh bin dch cho arm-linux-gcc s hin ra.
Ch : Nu khi g lnh arm-linux-gcc --version khng ra phin bn ca arm-linuxgcc th c th kim tra li bin mi trng PATH bng lnh echo $PATH

III.Ci t Qt creator.
Ta thc hin theo ng dn sau:
Applications ->> Ubuntu Software Center ->> [ti Search] Qt Creator
->> Install
Sau khi ci t xong, khi ng Qt, bn vo:
Applications ->> Programming ->> Qt Creator
y l giao din lm vic ca QT Creator:

IV. Ci t tslib.
Vo Teminal:
$ sudo i

$ sudo apt-get install autoconf


$ sudo apt-get install libtool
$ cd ~
$ mkdir tslib-arm
$ cd tslib-arm
Gii nn v Copy source tslib vo th mc tslib-arm.
$ cd tslib-1.0
$ ./autogen.sh
$ ./configure --prefix=/opt/tslib --host=arm-none-linux-gnueabi
$ make
$ sudo make install
Sau khi chy thnh cng tslib s xut hin trong opt/tslib

V. Ci t Qt everywhere.
Bc 1: Download v gii nn source code QT everywhere opensource 4.7.2
trong filesystem.
Bc 2: Sa file cu hnh bin dch qmake.conf cha ti /qt-everywhereopensource-src-4.7.2/mkspecs/qws/linux-arm-g++/qmake.conf
nh sau:
#
# qmake configuration for building with arm-linux-g++
#
include(../../common/g++.conf)
include(../../common/linux.conf)
include(../../common/qws.conf)
# modifications to g++.conf
QMAKE_CC = /opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabigcc

QMAKE_CXX = /opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabig++
QMAKE_LINK = /opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linuxgnueabi-g++
QMAKE_LINK_SHLIB = /opt/FriendlyARM/toolschain/4.5.1/bin/arm-nonelinux-gnueabi-g++
# modifications to linux.conf
QMAKE_AR = /opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabiar cqs
QMAKE_OBJCOPY = /opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linuxgnueabi-objcopy
QMAKE_STRIP = /opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linuxgnueabi-strip
QMAKE_INCDIR += /opt/tslib/include
QMAKE_LIBDIR += /opt/tslib/lib
load(qt_config)
Bc 3: Sau , tin hnh cu hnh th vin QT Everywhere 4.7.2 trc khi ci
t:
$ cd qt-everywhere-opensource-src-4.7.2
$ ./configure --prefix=/opt/qte -embedded arm -xplatform qws/linux-arm-g++ -qtmouse-tslib -little-endian -no-qt3support -fast -no-largefile -qt-sql-sqlite -nomake
tools -nomake demos -nomake examples -no-webkit -no-multimedia -nojavascript-jit
Bc 4: Ch n khi thng bo thnh cng th tip tc sa li thiu th vin armneon.h
Tm code C ca th vin arm-neon.h trn mng, sau thm file ny vo qteverywhere-opensource-src-4.7.2/source/gui/image

Cng trong th mc ny sa file qimage_neon.cpp, thm vo include sau di


#ifdef QT_HAVE_NEON:
#include <arm_neon.h>
Trong file makefile ca th mc gui tm c CFLAGS v CXXFLAGS, thm vo
ch dn: -mfloat-abi=softfp -mfpu=neon
Bc 5: Tin hnh:
$ make
$ make install
VI.

Ci t OpenCv.
a.

Ci t OpenCv cho PC.

C 2 cch:
Cch 1: Lm theo hng dn links: https://github.com/jayrambhia/InstallOpenCV/blob/master/Ubuntu/2.4/opencv2_4_3.sh
Cch 2:
Trc tin ta tin hnh ci t cc gi cn thit:
sudo apt-get install build-essential
sudo apt-get install pkg-config
sudo apt-get install libpng12-0 libpng12-dev libpng++-dev libpng3
sudo apt-get install libpnglite-dev
sudo apt-get install zlib1g-dbg zlib1g zlib1g-dev
sudo apt-get install libjasper-dev libjasper-runtime libjasper1
sudo apt-get install pngtools libtiff4-dev libtiff4 libtiffxx0c2 libtiff-tools
sudo apt-get install libjpeg8 libjpeg8-dev libjpeg8-dbg libjpeg-progs
sudo apt-get install ffmpeg libavcodec-dev libavcodec53 libavformat53
libavformat-dev

sudo apt-get install libgstreamer0.10-0-dbg libgstreamer0.10-0 libgstreamer0.10dev


sudo apt-get install libxine1-ffmpeg libxine-dev libxine1-bin
sudo apt-get install libunicap2 libunicap2-dev
sudo apt-get install libdc1394-22-dev libdc1394-22 libdc1394-utils
sudo apt-get install swig
sudo apt-get install libv4l-0 libv4l-dev
sudo apt-get install python-numpy
sudo apt-get install pkg-config
sudo apt-get install libgtk2.0-dev
_Sau khi ci t cc gi pha trn xong, ta ci Cmake dch th vin Opencv cho
my.
Cmake cng dng dch Opencv cho Kit
Sudo apt-get install cmake-qt-gui
Ch : Trong linux, mun s dng cc lnh lin quan n vic m, c, ghi mt
file video th phi ci t v bin dch th vin ffmpeg trc khi ci t opencv v
cc lnh ca opencv lin quan n video c xy dng da trn th vin ffmpeg.
Chi tit v cch ci t c y:
http://www.jayrambhia.com/blog/install-opencv-2-4-in-ubuntu-12-04-precisepangolin/
_Download th vin openCV 2.4.3 v my v gii nn Desktop, ng thi to
th mc builda(cha cc file config ca opencv2.4.3)
_M cmake ln v thit lp nh sau: (nhn configure hin ln bng cmake-gui)

_Sau khi nhn Finish th thit lp cc mc sau:


CMAKE_INSTALL_PREFIX
= usr/local
b chn WITH_OPENEXR v WITH_TIFF
_Nhn configure thit lp li v nhn generate.
_Trong th mc builda tm file CmakeCache.txt sa li dng sau:
CMAKE_EXE_LINKER_FLAG:STRING=-lpthread -lrt
_Sau thc hin lnh make ri sudo make install th mc builda
_Sau khi build xong tin hnh chnh sa v thm mt s file cung cp ng
dn n opencv:
sudo gedit /etc/ld.so.conf.d/opencv.conf
Trong file mi to ny thm ng dn: /usr/local/lib
. ng file li v thc hin lnh sudo ldconfig.
_Ngoi cch trn to ng dn n opencv, ta cn c th lm cch sau:
export LD_LIBRARY_PATH=/usr/local/lib
_Tip theo ta thm bin mi trng sau file bashrc trong th mc home:

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
b.

Ci t OpenCv cho arm-linux.

ci t Opencv cho Kit trc tin ta cn ci trnh dch arm-linux-gcc .Trong


lun vn ta s s dng arm-linux-gcc 4.5.1, u tin ta s download arm-linuxgcc-4.5.1.tar.gz , hoc c trong a FriendlyARM
Bc 1. Chuyn n th mc cha file nn arm-linux-gcc-4.5.1.tar.gz v tin
hnh gii nn bng lnh:
tar zxvf arm-linux-gcc-4.5.1.tar.gz
Kt qu gii nn c th mc cha trnh bin dch c ng dn nh sau:
opt/FriendlyARM/toolschain/4.5.1/bin
Nn copy th mc FriendlyARM (cha trnh bin dch gii nn) t trong
th mc /opt ca File System trn my tnh Linux.V tr trnh bin dch cho l
khng bt buc, tuy nhin thng cha trn th mc /opt thun tin cho cc
cng vic tip theo.
Bc 2. Cp nht bin mi trng PATH cho trnh bin dch cho
Mc ch: Cp nht bin mi trng ca Linux OS cho trnh bin dch cho
c th s dng trc tip mi ni (Gi lnh trn cc ca s lnh m khng cn
chuyn n th mc cha)
Thc hin:
M file
~/.bashrc
bng trnh son tho thch hp (gedit, vi, vim, ).
(Ch : file nm trong th mc tng ng ca ngi dng, v d /home/user. Mc
nh b n).
Thm 1 dng vo cui
PATH=$PATH:/opt/FriendlyARM/toolschain/4.5.1/bin
Lu v ng file .bashrc. Sau khi thit lp bin mi trng cn tt ca s
terminal, m ca s mi thit lp c hiu lc.
Bc 3. Kim tra kt qu thit lp bng cch g lnh: arm-linux-gcc --version.
Thng bo v phin bn ca trnh bin dch cho arm-linux-gcc s hin ra. Ch :
Nu khi g lnh arm-linux-gcc --version khng ra phin bn ca arm-linux-gcc th
c th kim tra li bin mi trng PATH bng lnh echo $PATH

Nh vy ta ci t xong arm-linux-gcc , ta s dng Cmake dch th vin


Opencv cho Kit.
u tin ta cng lm tng t nh phn ci t cho my, nhng chn ging nh
hnh bn di

Hnh : Thit lp OpenCV cho KIT 1


Nhn Next v chn hnh bn di

Hnh : Thit lp OpenCV cho KIT 2


Ti mc CMAKE_INSTALL_PREFIX ta chnh n th mc OpenCVforARM.

V b chn mc WITH_OPENEXR, v WITH_TIFF . Sau nhn Configure,


sau khi configure xong , nhn Generate.

Hnh : Thit lp OpenCV cho KIT 3


Nhn Configure , sau khi configure xong ta nhn Generate. Sau khi Generate
xong , ta m th mc builda, tm file CmakeCache.txt tm dng
CMAKE_EXE_LINKER_FLAGS:STRING=
Thay bng
CMAKE_EXE_LINKER_FLAGS:STRING=-lpthread lrt
Tip theo ta cd vo th mc builda, thc hin lnh
$ make
Sau khi make thnh cng ta
$ sudo make install
Sau khi make install xong th mc buildb s cha nhng th cn thit cho Kit.
Ta ch cn to mt ng dn tng t trn my cho Kit, v copy ton b ni dng
bn trong buildb, nh vy vic ci t cho Kit cng c thc hin xong.

Ch : ng dng di KIT chy c ng dng OpenCV ta copy file


lib/*.so xung th mc lib ca KIT
V.

CI T GFTP

np file chng trnh ( bin dch trn my tnh bng trnh bin dch cho) ln
KIT, chng ta s dng kt ni Ethernet (cable LAN) gia my tnh v KIT (target)
bng phn mm gFTP (phn mm giao tip truyn file trn Linux/Ubuntu).
Bc 1: Ci t gFTP v minicom

Thng thng gFTP


Application/Internet/gFTP)

ci

Nu cha c, c th ci t t internet dng lnh:


$ sudo apt-get install gftp
$ sudo apt-get install minicom

sn

trn

Ubuntu (M

Bc 2: Cu hnh cng LAN trn my tnh Linux

KIT FriendlyArm c a ch IP mc nh l 192.168.1.230, netmask:


255.255.255.0

Do vy kt ni cable LAN gia my tnh PC v KIT (target) cn cu hnh


my tnh c cng gii a ch ny. Thc hin lnh ifconfig cu hnh cho
ethernet interface (eth0)
$ sudo ifconfig eth0 192.168.1.30 netmask 255.255.255.0 up
S dng lnh ifconfig eth0 kim tra li xem eth0 c a ch IP cng
gii.

Bc 3: Thc hin kt ni gia Host (my tnh Linux) v Target (KIT) dng
gFTP

M Teminal: telnet 192.168.1.230


Login .... : root
Password: ktmt

Ch : nu cha c pass th kt ni UART vi my tnh vo terminal.


$ minicom
$ passwd
sau t li pass cho kit (nn t l ktmt)

M phn mm gFTP: Applications->Internet->gFTP


Thit lp cc tham s

a ch IP ca KIT: 192.168.1.230

Username: root

Password: ktmt (c th i bng lnh passwd)


M kt ni (Click nt Open connection)
Ca s bn tri l cy th mc trn my pht trin (my HOST)
Ca s bn phi l cy th mc trn kit (Target)

gFTP cung cp chc nng duyt/chuyn th mc (h thng file trn KIT), v


truyn/nhn file gia Host v KIT.

VI.

CH :

ng dng chy c trn friendly arm ta nn them file appscript vo th mc


ng dng build xung kit.

Anda mungkin juga menyukai