您的位置:首页 > 其它

Freescale MPC8313 BSP使用说明(ubuntu 10.04)

2010-09-29 16:22 381 查看
这段时间在做MPC8313的开发, 在这里做一下笔记吧, 很多虽然是比较简单的东西,还是记录一下吧,免得已后忘了,以可以查查,以给后以第一次使用的人一个参考吧.

Freescale MPC8313 BSP使用说明

MPC8313的BSP使用的是LTIB为基础的配置工具. 安装盘ISO:

1.LTIB安装

a. mount ISO:

mount -o loop MPC8313E_RDB_K26_20070831-LTIB.iso /mnt/cdrom

b.以非root用户运行, 该用户需要有sudo权限:

/mnt/cdrom/install

然后根据提示输入安装路径.

注: a.提示找不到rpm-build

我是在ubuntu 10.04上安装, 系统带的rpm是 4.7的,需要卸裁后安装4.4版的rpm,

rpm_4.4.2.3-2ubuntu1_i386.deb,librpm4.4_4.4.2.3-2ubuntu1_i386.deb他们又依赖于libbeecrypt6_4.1.2-7_i386.deb

b.提示没有sudo root的权限

ltib安装是普通用户权限,但是部分操作需要root用户权限。按照提示进行如下操作,

#/usr/sbin/visudo

然后在文件最后添加如下内容:

USERNAME ALL = NOPASSWD:/bin/rpm, /opt/freescale/ltib/usr/bin/rpm

注:visudo实际就是编辑文件/etc/sudoers文件

c.提示bison错误

bison -y -d ./parse.y

make: *** [parse.c] Segmentation fault

解决:在运行./ltib之前,修改”dist/lfs-5.1/bison/bison.spec”文件,

在%Build段修改make为make CFLAGS=-O0。然后再运行./ltib。

d.提示util错误

make -C util

make: Entering directory `/opt/freescale/ltib/usr/src/rpm/BUILD/mtd/util'

gcc -I../include -O2 -Wall -g -c -o ftl_format.o ftl_format.c -g -Wp,-MD,.ftl_format.c.dep

In file included from /usr/include/endian.h:61,

from /usr/include/sys/types.h:217,

from ftl_format.c:38:

解决:修改“/opt/freescale/pkgs/mtd-utils-20060302-cf-byteswap_h-1.patch”文件

注掉 lines 46, 47 and 48 :

+#if !defined _BYTESWAP_H && !defined _NETINET_IN_H

+# error "Never use <bits/byteswap.h> directly; include <byteswap.h> instead."

+#endif

by

+//#if !defined _BYTESWAP_H && !defined _NETINET_IN_H

+//# error "Never use <bits/byteswap.h> directly; include <byteswap.h> instead."

+//#endif

然后删除“/opt/freescale/ltib/usr/src/rpm/BUILD/mtd”这个目录,最后再运行./ltib

ltib的目录构成:

安装完成后会生成如下二个目录/opt/freescale/, <install_path>/ltib-<version>,

其中/opt/freescale/ltib下是ltib工具的相关工具集, /opt/freescale/pkgs源代码包,相当多的开源软件包,当然你也可以添加新的进去.

/opt/freescale/usr里面是powerpc-linux编译器。

编译目录:

编译时使用的内核在<install_path>/ltib-<version>/rpm/BUILD/linux 下.

2.卸载

只需要手动删除下列目录:

/opt/freescale/pkgs,

/opt/freescale/ltib,

<install_path>/ltib-<version>

3.运行LTIB

cd <install_path>/ltib

./ltib

4.配置

./ltib -c

5.编译结果

<install_path>/ltib-<version>/rootfs/ 目录下是编译完成的目标板的根文件系统.

6.LTIB编译脚本配置

注:以下的文件路径均以ltib的安装路径开始,如/ltib/config/ 表示安装路径的 ltib-<version> 下的config目录.

++ /ltib/config 目录下保存有ltib在配置时使用的各种参数表

packages.lkc配置对应配置界面主下菜单"Package List"下的可以选择的各种包的相关信息

可以配置包的依赖关系等.

network.lkc 配置对应菜单"Target System Configuration,Options->start

networking->Network setup"

++ 配置完成后,配置信息会保存到/ltib/config/platform/<平台名称>/ 这个目录下.

这个目录下还保存了busybox和kernal的配置信息.

要自定义新的平台时,只需要复制以有的平台目录为一个新目录,然后修改目录下的main.lkc中的

平台相关信息.

++ RPM spec文件:

RPM 的spec文件存入在/ltib/dist/lfs-<version>/<包名称> 目录下.

7.ltib命令使用

将指定的包将出来,并使用所有在.spec文件中设置的patch:

./ltib -m prep -p <package>

编译一个包:

./ltib -m scbuild -p <package>

执行包安装,将安装到lfs-<version>/rootfs下:

./ltib -m scinstall -p <package>

在自己的修改完成后可以生成一个patch文件:

./ltib -m patchmerge -p <package>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: