EDA365电子论坛网

标题: MY-IMX28 Linux-3.14.54 编译手册(1) [打印本页]

作者: thinkfunny    时间: 2019-8-1 11:23
标题: MY-IMX28 Linux-3.14.54 编译手册(1)
MY-IMX28 Linux-3.14.54 编译手册

0 x( [9 D! _+ j; j; k5 X: ]/ S* e1  文档说明
4 T2 P  I" ~# j- M* e* _1 E& N

; f! G, j2 X$ f" R! K$ L) s1.1  系统环境说明
编译主机CPU架构:64位
编译主机系统:Linux
Linux发行版:Ubuntu
Ubuntu版本类型:服务器版
Ubuntu版本号:12.04.5
Ubuntu系统类型:x86-64
注意:开发主机请使用ubuntu 12.04.5 x86-64(桌面版或服务器版均可),使用其他发行版的Linux或Ubuntu的其它版本可能会遇到的不必要的问题。
9 I- I" `: W- D2 J" {

' k$ }# ?" I% M* Q/ L6 z* i1.2  操作说明
1)文档中以“$”开头的行,其后是Linux命令。
8 }3 y; E5 }! N) v* |2)文档中所有的Linux命令建议手动输入到Linux主机执行(直接复制、粘贴到Linux主机上执行,可能会执行失败)。 ; y. p4 ~( c/ x% x5 X
3)文档中的Linux执行命令,如果空格后的下一个字符是“-”的(如:sudo apt-get –y install之类的),请手动输入到Linux主机执行(直接复制、粘贴到Linux主机上执行,通常会执行失败)。 $ d5 `, x& F! |) D" Q8 S' G; v4 L
4)文档中所有一行没写完的Linux命令请手动输入到Linux主机执行,(因为复制、粘贴命令不能包含类似“换行符”之类的特殊字符)。 5 D3 t- O- Z$ Q" Z! v  `5 Z
5)按文档输入并执行Linux命令时注意观察命令的执行结果与文档图片中的是否一致,以确认命令是否输入有误及是否执行失败。 # F0 v; W: t, j5 e- d6 _: W
6)第一遍编译请严格按照文档进行,否则可能出现莫名其妙的错误。

) K/ b; }7 V+ p# b
! ?! J! L, E6 n1.3  截图说明
为使视图看起来简洁整齐,截图中的命令提示符统一使用myzr$。

, u: u/ I6 X$ k$ ]; y- S3 B1 ~! q* z0 c* G  W$ X
1.4  图片中的Linux命令
在文档的图片中观察“linyn@u12045-serv:~$”开头的行可以直观的看到输入的linux命令。
; `5 O- x; ~# Y3 M7 i* v# C

: @+ a8 I0 Z5 M7 Q2  准备源码及相关文件

! J. T) `4 E8 N
" T4 `! `! c7 W( B$ Z
. U4 U0 t2 v! Z9 [7 ]2.1  源码文件
评估板对应的Linux版本及对应的源码文件见下表:

3 N' f" a8 u! x, z, |, {2 F) U
$ W5 p0 a+ p8 O+ Q8 x: w
) Y! y: o+ A& f3 |$ G; [2.2  交叉编译工具文件
Linux程序交叉编译工具:gcc-4.4.4-glibc-2.11.1-multilib-1.0.tar.bz2/ g& N: _! w9 C, }! S$ E0 u
Linux交叉编译工具配置文件:gcc-4.4.4-glibc-2.11.1-multilib-env
' }8 x7 O1 l% U' _3 x

" u$ N( O& b! u2.3  创建工作目录
1)源码目录
+ i3 o: ]! H5 ?! B5 I$ mkdir -p ~/my-imx28/02_source/ ]( y, y) ~+ l4 w4 I  U5 H

5 r6 o' U. O0 M$ M' K, ?; j2)工具目录
2 M; ~( s4 P4 L: E. x% |$ mkdir -p ~/my-imx28/03_tools( `- g+ ?7 {- A

2 K+ F6 a6 f, m  v7 W# D' ^3)镜像目录
2 {: A* o: `. h" E6 |$ mkdir -p ~/my-imx28/04_image* N6 s2 V& v8 Q' |8 u, n

7 k! H: f  k; n6 ]! K4)应用程序目录% J8 F( ?( r" S( l! x# Z: E2 u; J
$ mkdir -p ~/my-imx28/01_application
6 @) V# e2 ~( A( |" D3 d' L
) r3 X/ p: a, O( {$ i  Y' j* _

# ^. y% V8 b. ]: y+ m4 D& q3  准备开发环境8 }1 P5 e  _, H$ A4 W% A! P
# _8 \1 d# {$ k% Q3 B' t; l

% a; q1 I; E+ S( M: `" @3.1  更新主机的源列表
$ sudo apt-get update 3 _5 _4 u: J$ k1 y
/ ?! ], ?+ E- Q! {% f
更新完成后如下图所示:
) D; l( K1 t9 P7 {' a& z( r8 v7 F

/ M- W7 x, r  e1 [1 F1 j& [8 ~; o1 Q" m
3.2  安装aptitude包管理工具和ia32-libs
提示:如果编译主机的Linux是32位的,可以跳过此步骤。
3 S7 ~5 R  ~" h5 h- r! ^2 R
3.2.1  安装aptitude包管理工具
$ sudo apt-get -y install aptitude $ W3 Z/ T, D: f$ A+ k5 h" J

% b8 o6 I  }) |! I7 [* s; @提示:上图为安装过aptitude后,再次执行安装命令的截图。
" ?: t4 D1 I" f# Z4 H! Q" c
2 U! Q; z/ g3 b* ]
3.2.2  使用aptitude安装ia32-libs
$ sudo aptitude -y install ia32-libs
! d/ R4 n6 U4 t
( W  H# A& ~: ?! x( G) w& K5 W
提示:上图为安装过aptitude和ia32-libs后,再次执行安装命令的截图。
9 n0 Y' Z, ~# b  L

: Z6 F# v3 A* ]# b3.3  安装mkimage工具
$ sudo apt-get -y install uboot-mkimage
6 O' F; B! z2 e5 w; ]提示:下图为安装过mkimage工具后,再次执行安装命令的截图。
  y9 B& q9 ~2 c; h- E2 H& S
" O' f# E/ ^0 ]# }" N% `" {

8 B* z( ~% z0 \0 b3.4  安装ncurses-dev
make menuconfig对其具有依赖性质# i3 K+ `: t9 G) s- P- ?' S/ p
$ sudo aptitude -y install ncurses-dev
3 C  ?2 I0 ^' E* L( }3 W7 o

+ F/ d7 w+ {! t  f3 B! e+ h% ]+ I提示:上图为安装过ncurses-dev工具后,再次执行安装命令的截图。
5 u3 N  x  ], m% ]

9 `7 B, X' `1 a# B7 Z4  安装配置交叉编译工具链  C# {8 i$ g1 H- j. S

) s4 m3 L" r+ y
+ J( j0 x/ y' x$ t" F4.1  安装Linux交叉编译工具链
1)进入交叉编译工具链目录/ T2 {/ l8 v' J* z0 X5 _- M* J
$ cd ~/my-imx28/03_tools/# K5 X4 _- }& V8 r- s
2)复制Linux交叉编译工具到目录) H3 ~) f" I  ^( ~- u6 j
将gcc-4.4.4-glibc-2.11.1-multilib-1.0.tar.bz2复制到“~/my-imx28/03_tools”,这一步自己采取相应的方式完成。$ b$ N: l4 _0 C; }
3)解压Linux交叉编译工具: T7 x* t+ @/ o# k  I
$ tar jxf gcc-4.4.4-glibc-2.11.1-multilib-1.0.tar.bz2
  N' Q; t4 u/ Z. c4 c7 p
1 k7 c- x' ~1 F) o7 L# l
4)复制交叉编译工具配置文件1 i1 S8 j3 D7 |: N- t! D
将gcc-4.4.4-glibc-2.11.1-multilib-env复制到“~/my-imx28/03_tools”,这一步自己采取相应的方式完成。) {  k$ C$ B$ y4 B8 n& d
5)检查安装5 B% Q  J7 k% L  D7 }: k
$ source gcc-4.4.4-glibc-2.11.1-multilib-env
6 t, m+ v+ M" q5 Q2 f$ ${CROSS_COMPILE}gcc –v
' N" j- p% Y/ i' H! Z

' |/ t' k) k/ |8 B* p+ F
/ n& q9 K+ |. ~5 _# ]5  U-Boot编译5.1  准备编译: F3 `6 G7 Y9 e
% |9 h% g3 W! Y
5 b) N) Z! s" l: ~' {2 c' P# A0 _
5.1.1  复制源码包到开发主机中
将下载的“u-boot源码”复制到Linux开发主机的“~/my-imx28/02_source”。9 d* h3 M/ u( S) Q
这一步自己采取相应的方式完成。
; N1 o& e5 k; b3 @8 I
0 q/ K' R9 K9 k: y2 D
5.1.2  解压u-boot源码包
$ cd ~/my-imx28/02_source/
, S$ B# u4 Y. V  i$ tar jxf u-boot-2015.04.tar.bz2
% D/ N) B' ^! |' g- d+ ]
6 q7 p4 N$ U+ c" j* f% Y1 }

4 E' {; b2 a  k- J2 H7 H5.1.3  更新库libssl-dev
$ sudo apt-get install libssl-dev9 S5 Z& X# B* G) n9 b  W7 I

! F. n$ H9 Y5 E/ M8 ?! b0 u: I0 d2 u# t
【下章节:MY-IMX28 Linux-3.14.54 编译手册(1)】
$ \4 e1 }. K& G# b' U1 R  r7 n

6 R: ~" j1 Q& i5 N
作者: wu68aq    时间: 2019-8-1 19:03
好东东必须顶




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2