完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
开发环境是开发人员在开发过程当中,所需的软硬件平台。开发环境并不是一个固定的样式,本文中将详细讲解一个 嵌入式 Linux 开发环境搭建的方法。如果您已经对嵌入式开发非常了解的话,可以按照自己的需求来搭建环境。如果和本文环境不一样而产生报错,您可以从国内一些 Linux 论坛和网站搜索相关的信息来解决。本文介绍的环境经过 飞凌嵌入式公司的测试,如果对嵌入式开发不是非常熟悉的朋友,希望您按照 飞凌嵌入式提供的方法来搭建环境。各位朋友可以放心按照本文说明的方法来搭建开发环境。 1.1 版本说明 Ø 操作系统: Ubuntu12.04 64 位版 Ø 交叉工具链: arm-fsl-linux-gnueabi-gcc-4.6.2 Ø Bootloader 版本: u-boot-2015.04 Ø 内核版本: linux-3.14.38 1.2 编译环境说明Ø Linux PC :在 PC 上直接安装 ubuntu12.04 作为编译的主机,这样做的好处是编译速度快、稳定。 Ø Vmware8.0+ubuntu12.04 :在 XP 下安装虚拟机,并在虚拟机下进行编译。这种方式的好处是 1 台电脑就可以搭建开发环境,编译、烧写都在同一台电脑完成,缺点是编译速度太慢,各种网络服务不稳定。 1.3 编译环境搭建1.3.1 : Ubuntu 的安装与设置Ubuntu Linux 介绍: Ubuntu 是一个以桌面应用为主的 Linux 操作系统。 Ubuntu 拥有很多优点,相对于其他版本的 Linux , Ubuntu 也有着自己的优势。首先,安装系统非常简单,只需要非常少的设置即可,完全可以和 Windows 桌面系统想媲美;其次,图形界面很人性化,模仿了在 xp 下常用的快捷键;还有,安装和升级程序时,可以通过网络,由系统自行安装依赖的文件包,从此不必再为 Linux 系统的依赖关系大伤脑筋。综合考虑大家的使用习惯和学习的需要,我们选用 Ubuntu Linux ,并在产品光盘中提供了 Ubuntu12.04 光盘镜像‘ ubuntu-12.04-i386.iso ’以便于用户刻盘和虚拟系统安装。 Linux 桌面系统版本众多,目前本手册所有 Linux 实验和源码在 ubuntu-12.04 版本测试可以通过。使用其他版本 Linux 桌面系统,可能会出现 gcc编译器和库文件相关的问题。碰到类似问题,可以在 Linux 系统发行商的官方论坛上咨询和查询。如果对 Linux 不熟悉的用户,强烈建议使用飞凌介绍的方法。 另外,为了满足各位用户的需求,在本手册的附录中,特对 VMware 虚拟机使用方法进行了详细的讲解。虚拟机相关操作详见《附录五:虚拟机VMware-8.0 的安装与设置》 Ubuntu 官网 : 129H http://www.ubuntu.org.cn 可下载各个版本的 Ubuntu 。当然,官网能找到各种关于 Ubuntu 的信息。 Ubuntu 官方论坛 : 130H http://forum.ubuntu.org.cn/ 可以找到大量的实用的 Ubuntu 资源,中文论坛。 Ubuntu 也有官方的英文论坛。 1.3.2 安装 Ubuntu 步骤 1 : 首先准备一张 Ubuntu12.04 的安装光盘。将光盘插入光驱,在 PC 的 bios 中把 PC 启动方式设置为光驱启动,启动 PC 。 步骤 2 : 启动 PC 后,安装盘会提示选择安装语言种类。使用 PC 键盘的方向键选择在安装过程中显示的语言,在这里我们选择 English>> 点击“Install Ubuntu” 按钮。 步骤 3 : 选择“ Erase disk and install Ubuntu ” >> 点击“ Continue ”按钮 ( 注意:非虚拟系统会格式化您的硬盘!请谨慎操作。 ) 步骤 4 : 硬盘空间以及挂载点的分配。这里选择默认。也可根据个人需要来进行设置 . 单击“ Install Now ” 步骤 5 : 选择键盘布局,默认即可 ,单击“ Continue ” . 步骤 6 : 选择所在地 , 上海 , Continue: 步骤 7 : 输入系统用户名和密码,这里输入的用户名 :forlinx, 密码 :123456 仅作为事例 . 点击“ Continue ”按钮 , 系统会完成安装。 注意:这里的用户名属于普通用户,不具备 root 用户权限。 1.3.3 Linux 终端在 Linux 系统中终端是一个很实用的与操作系统交互的窗口,您可以使用终端来编译应用程序,启动各种系统服务,在 Linux 系统中占据着非常重要的位置。 如图进行操作,即可将终端设置为快捷键。 以后每次单击启动面板上的图标即可运行终端窗口: 1.3.4 Ubuntu12.04 root 用户登录设置ubuntu12.04 默认是不允许 root 登录的,在登录窗口只能看到普通用户和访客登录。以普通身份登陆 Ubuntu 后我们需要做一些修改。 步骤 1 : 普通用户登录后,修改系统配置文件需要切换到超级用户模式,在终端窗口里面输入命令后回车 : #sudo -s 步骤 2 : 然后输入安装 Ubuntu12.04 时设置的系统密码,即可进入 root 用户权限模式。 步骤 3 : 在终端窗口中执行 #gedit /etc/lightdm/lightdm.conf 步骤 4 : 在文本全部内容删除并粘贴以下七行内容: [SeatDefaults] allow-guest=false autologin-user=root autologin-user-timeout=0 autologin-session=lightdm-autologin user-session=ubuntu greeter-session=unity-greeter 步骤 5 : 然后我们启动 root 帐号: 1.3.5 设置 Ubuntu 网络参数# sudo passwd root 步骤 6 : 根据提示输入 root 帐号密码。(注意: Linux 中输入密码无符号显示) 步骤 7 : 重启 ubuntu ,不需要手动输入 root 用户名密码,系统会自动进入 root 用户。 因为每个 PC 的网络环境不一定一样,所以需要您根据自己的实际情况来设置 Ubuntu 的网络,如果设置不成功,可以去 Ubuntu 的官方论坛上咨询。本文 PC Linux 网络的设置方法,仅供参考。 截图是设置虚拟机 dhcp 自动获得 ip 的步骤 选择 nat 方式 上述方法设置后,不用在虚拟机设置 ip 地址了。 步骤 1 : 启动 Ubuntu , root 用户登陆系统,单击桌面最右上端的 按钮,弹出如下选项: 步骤 2 : 选择 System Settings ,双击 Network 进入网络设置项: 步骤 3 : 单击 Options 按钮 步骤 4 : 选择 IPV4 设置,输入您的 IP 地址、子网掩码、 网关、 DNS ,点击 Save... ,网络设置成功。 步骤 5 : 测试一下,笔者的宿主机 IP 为 192.168.0.30 ,用虚拟机来 ping 宿主机 : 如图证明网络设置成功。 1.3.6 安装交叉编译器步骤 1 : 将文件 gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12.tar.gz 拷贝到 Ubuntu 主目录下 1 i.MX6UL 用户光盘 / iMX6UL 用户光盘( A ) linuxtoolgcc-4.6.2-glibc-2.13-linaro-multilib-2011.12.tar.gz 步骤 2 : 在 Ubuntu 中新建一个终端,输入下面的命令安装交叉编译器: #cd ( 进入主目录 ) #mkdir -p /opt/freescale/usr/local ( 创建目录,若目录已存在会提示错误,跳过即可) #tar jxvf gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12.tar.gz -C /opt/freescale/usr/local (编译器解压到 /opt/freescale/usr/local ) 步骤 3 : 查看 gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12 是否解压成功。 #ls -l /opt/freescale/usr/local 如可以看到 gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12 文件夹即解压成功。 步骤 4 : 添加环境变量到 Profile ,执行命令打开编辑 Profile 后,重启电脑。 #gedit /etc/profile 最后一行添加以下内容 export ARCH=arm export CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-none-linux-gnueabi- export PATH=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin:$PATH 保存并退出。在终端输入命令,使 Ubuntu 重启。 #reboot 步骤 5 : 在终端里面执行以下命令,验证交叉编译器安装是否成功 #arm-fsl-linux-gnueabi-gcc -v 下图为安装成功提示 回车,就可以使用该编译器来编译 Uboot 代码和内核代码了。 注意: 以上操作均是以 root 用户登录系统操作为例; 所修改的文件仅对当前用户有效, 如果通过终端切换用户,以上修改的文件对新用户无效。 1.3.7 安装依赖包Linux 系统的编译需要安装一些工具包,可执行本公司提供的脚本进行自动安装。 本节操作前必须确保您的计算机或虚拟机能正常连接互联网,如您在安装中出现网络断开连接请再按照以下步骤进行安装。 Ø 安装 linux 依赖包 需要在 ubuntu12.04 32bit 版本安装 必须连接互联网。 步骤 1 : 将文件 setup_env.sh 拷贝到 Ubuntu 主目录下 1 i.MX6 用户光盘 /i.MX6 用户光盘( A ) linuxtoolsetup_env.sh 步骤 2 : 给 setup_env.sh 添加可执行权限 #chmod u+x setup_env.sh 步骤 3 : 执行脚本 #./setup_env.sh 步骤 4 : 安装过程中出现如下提示需作出对应操作 此提示按下回车 此提示输入“ Y ”后按下回车 1.4 编译 搭建好开发环境后,接下来进行 U-boot 和 Linux 内核在 PC Linux 的编译。本文一切操作基于飞凌嵌入式iMX6UL开发板,关于iMX6UL的资料请联系飞凌嵌入式在线客服人员 1.4.1 编译 u-bootuboot 源码 暂不开源,请使用飞凌提供的u-boot.imx,文件所在路径 Ø i.MX6UL 用户资料 /Linux imageuboot.imx 如您自行移植u-boot可参考以下方法进行编译: 步骤 1 : 解压缩 uboot 源码,命令如下。 #tar zxvf uboot-2015-04.tar.bz2 步骤 3 : 编译 uboot #cd uboot-2015-04 # ./build.sh 编译成功后,将在 ‘ uboot-2015-04 ’目录下产生名为 ‘ u-boot.imx ’的二进制文件。该文件即我们需要烧写到 Emmc 上的 U-boot 映像文件。 1.4.2 编译 Linux-3.14.38 将压缩包 ‘linux-3.14.38.tar.gz’ 拷贝到你的工作目录下,解压缩: #tar zxvf linux-3.14.38.tar.bz2 Ø i.MX6 用户光盘 /i.MX6 用户光盘( A ) linuxsrclinux-3.14.38.tar.bz2 Ø 配置内核 复制 linux_imx6ul_config 到 .config 以方便你配置你的内核,命令如下。 #make distclean #cp linux_imx6ul_config .config Ø 编译内核 编译内核镜像 zImage 和设备树 dtb ,命令如下: #make ARCH=arm CROSS_COMPILE=arm-fsl-linux-gnueabi- Linux-3.14.38/arch/arm/boot/zImage 为将来使用的内核镜像 Linux-3.14.38/arch/arm/boot/dts/imx6ul-14x14-evk.dtb 为将来所使用的设备树 Ø 单独编译 zImage #make ARCH=arm CROSS_COMPILE=arm-fsl-linux-gnueabi- zImage Ø 单独编译 dtb #make ARCH=arm CROSS_COMPILE=arm-fsl-linux-gnueabi- dtbs 1.4.3 制作 rootfs步骤 1 : 将文件系统源文件 ‘rootfs.tar.gz’ 拷贝到 Ubuntu 的根目录下 Ø i.MX6UL 用户光盘 /i.MX6UL 用户光盘( A ) linuxsrcrootfs.qt4.tar.bz2 为 qt 界面文件系统。 Ø i.MX6UL 用户光盘 /i.MX6UL 用户光盘( A ) linuxsrcrootfs.tar.bz2 为 console 文件系统。 本文以 rootfs.qt4.tar.bz2 为例作为说明, rootfs.tar.bz2 操作相同。 步骤 2 : 解压文件系统源文件 飞凌官网:https://www.forlinx.com/article_view_318.html
|
|
相关推荐
|
|
787 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-mfgtools烧录流程介绍之烧写所需镜像
888 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-mfgtools烧录流程之烧写方法
608 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-内核编译之初次编译
905 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-内核源代码的目录结构和文件说明
821 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 06:09 , Processed in 0.692269 second(s), Total 64, Slave 47 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号