4412嵌入式开发板建环境

发布者:独享留白1028最新更新时间:2022-01-25 来源: eefocus关键字:嵌入式开发板 手机看文章 扫描二维码
随时随地手机看文章


本节的主要内容是,详细讲解如何搭建编译环境。
这里需要注意的是,搭建过程中用到的各类软件,都需要和手册提到的版本保持一致,如
果使用的是“搭建好的镜像”,则可以跳过这一节,但是编译的时候要针对性的设置一下环境变量。


1 安装基本软件
首先安装虚拟机“Vmware_Workstaion_wm”,然后使用虚拟机安装“Ubuntu12.04.2
初始系统”。Ubuntu 的安装方法可以参考 3.2 小节来安装 Ubuntu12.04.2 原始系统。
如下图所示,Ubuntu 初始系统安装完成。

 

 

 

输入密码“topeet”,登陆 Ubuntu,键盘上按“Ctrl+Alt+t”,弹出 Ubuntu 的控制台。
如下图所示。

 

 

 

安装完成后进入 Ubuntu 的终端,激活 root 用户,具体操作如下:
在 Ubuntu 命令行中,执行命令“sudo passwd root”。
接着在 Ubuntu 的终端输入安装时的密码和新密码,Ubuntu 系统中密码默认是隐藏的。
如下图所示。

 

 

 

接着登录 root 用户,在 Ubuntu 命令行中,执行命令“su root”,接着输入密码,就可以
登陆 root 用户。
后面所有的操作都需要在 root 用户下面进行操作,如下图所示。

 

 


参考“3.2.4 虚拟机 VMware-workstation8.0.3 联网以及基本设置”联网。
参考“3.3.4.2 修改数据源地址”将 Ubuntu 数据源地址修改为国内地址。
参考“3.3.4.3“apt-get update”命令”更新数据源。
然后在 Ubuntu 安装软件 vim 和 ssh,具体操作如下:
在 Ubuntu 命令行中,执行命令“apt-get install vim”和“apt-get install ssh”。
上面安装的 ssh 软件,可以很方便在主机和虚拟机上传递文件,也可以通过远程终端控制
Ubuntu 系统,这里推荐给大家使用。ssh 软件的使用参考 3.3 小节。
2 安装编译组件
交叉编译工具
编译的时候需要用到交叉编译工具,我们提供的交叉编译工具是用户光盘“02_编译器以及
烧写工具”→“arm 交叉编译器”文件夹中的压缩包“arm-2009q3.tar.bz2”。

 

 

使用 SSH 工具将交叉编译工具拷贝到 Ubuntu12.04.2 系统的文件夹“usr”
-->“local”-->“arm”中,local 下默认没有 arm 文件夹,可以新建一个。如下图所示。

 

 


拷贝编译器之后如下图所示。

 

 


然后在 Ubuntu 系统中将压缩包解压到当前目录下。
使用命令“cd /usr/local/arm/”进入/usr/local/arm 文件夹,然后使用解压命令“tar -vxf
arm-2009q3.tar.bz2”解压压缩包,如下图所示。

 

 


修改交叉编译工具的路径(修改环境变量)
修改交叉编译工具路径,需要修改环境变量,在 Ubuntu 命令行中,执行命令“cd /root”
和“vim .bashrc”,打开环境变量文件“.bashrc”,如下图所示。

 

 

 

然后在“.bashrc”文件中的最后一行添加如下信息:
“export PATH=$PATH:/usr/local/arm/arm-2009q3/bin”
如下图所示。

 

 

 

修改完成后保存退出。
执行下列命令,更新环境变量“source .bashrc”的命令,如下图所示。

 

 

 

最后,在 Ubuntu 命令行中输入命令“arm”,然后按 TAB 键,如果在命令行中能够看到
arm 编译器的信息,就表明交叉编译工具安装成功,如下图所示。

 

 

 

 

3 安装库文件、JDK以及降低GCC版本
为了方便用户,将库文件和 JDK 的安装命令制作成了脚本文件,用户只要执行两个脚本就
可以安装库文件和 JDK。这两个脚本在用户光盘“02_编译器以及烧写工具”→“tools”文件
夹下的压缩包“Android_JDK.tar.bz2”中,如下图所示。

 

 

 

用户将压缩包拷贝到 Ubuntu 系统中,解压压缩包会生成文件夹“Android_JDK”,如下
图所示。

 

 

 

安装库文件和 JDK
使用 cd 命令,进入解压出来的“Android_JDK” -->“jdk6”文件夹,运行脚本文件
“install-sun-java6.sh”。
需要注意的是,这条命令执行完毕可能会耗时 15 分钟以上。
如下图所示,执行“./install-sun-java6.sh”脚本。

 

 

 

执行上面的命令的时候,根据提示输入“回车”命令,升级完成之后如下图所示。

 

 

进入解压出来的文件夹“Android_JDK”中运行脚本“install-devel-packages.sh”,安
装库文件,在 Ubuntu 命令行中,执行命令“./install-devel-packages.sh”。需要注意的是,
这条命令可能会耗时 40 分钟以上,如下图所示。

 

 

 


上面命令执行的时候,需要根据提示输入“Y”

 

 


如下图所示,安装完毕。

 

 


这里需要注意的是,上面的脚本执行完毕的时候,注意一下有些库文件是不是提示没有安
装。如果发现有库文件没有安装,有可能是网络不好或者下载源丢失。这个时候用户使用一下
更新下载源的命令”apt-get update“,然后再执行一下上面的两个脚本。
例如,如下图所示,再次运行“./install-devel-packages.sh”之后,提示没有无法安装的
库和软件,那么表明已经安装完全了。

 

 

 

降低 GCC版本
使用 Ubuntu 编译 Android 的时候需要用到 Ubuntu 系统自带的 GCC4.4.7 编译器,但是
安装的 Ubuntu12.04.2 版本,它的 GCC版本过高,所以这里需将要 GCC编译的版本降低到
4.4.7。
进入前面解压的文件夹“Android_JDK”中,会看到一个文本“update_gcc.txt”,打开
文本“update_gcc.txt”后会看到里面有 8 条命令,这 8 条命令需要在 Ubuntu 命令行中依次
执行。如下图所示,使用命令打开“update_gcc.txt”文件。

 

 

 

如下图所示,有 8 条命令。

 

 


例如执行第一条命令。

 

 

 

根据提示输入“y”,如下图所示。

 

 


其余几条命令,如下图所示,执行起来很快。

 

 

在执行了这 8 条命令之后,Ubuntu 系统就将 gcc 的版本降低到 4.4.7。
如下图所示,使用命令“gcc -v”,可以看到 gcc 的版本为 4.4.7 了。

 

 

 

需要注意的是,在执行这 8 条命令时,只有第一条命令会耗时 10 分钟左右,其它的都会
很快完成,而且命令一定要依次执行,不能有遗漏。


关键字:嵌入式开发板 引用地址:4412嵌入式开发板建环境

上一篇:iTOP-6818嵌入式开发板 win10 下 tf 卡分区
下一篇:迅为iTOP-6818 Qtopia2.2.0开发环境搭建以及编译镜像

推荐阅读最新更新时间:2024-11-02 11:20

tiny4412的中断资源连接关系示意图
在tiny4412的设备树中可以发现,中断资源是以树的形式呈现的,下面是我画的一张图,大致描述了tiny4412上中断资源的连接关系。 可以到 http://pan.baidu.com/s/1ge0sz6N 下载。 其中, 红色的表示的是root interrupt controller(中断资源的生产者),无色的表示的是由root interrupt controller引出的普通的interrupt controller(中断资源的消费者和生产者),绿色的表示的是片内外设和板级外设(中断资源的消费者)。
[单片机]
tiny<font color='red'>4412</font>的中断资源连接关系示意图
Tiny4412中断控制器(GIC)之外部中断
#include regs.h void enable_mmu(unsigned long ttb); void init_ttb(unsigned long *ttb_base); void mmap(unsigned long *ttb_base, unsigned long va, unsigned long pa); void memset(char *buf, char ch, int size); void memcpy(char *dst, char *src, int size); void do_irq(unsigned long regs ); void (*printf)(char *, ...) = 0x
[单片机]
Exynos4412裸机程序,时钟操作
有了上一节《 Exynos4412时钟体系分析 》的基础,这一节我们来做几个和时钟有关的实验。 其实,Exynos 4412的 IROM代码已经设置了PLL,我们可以通过串口把IROM设置的PLL寄存器值打印出来,这些值打印出来是这样的(摘自韦东山老师的《嵌入式Linux系统开发完全手册_基于4412__上册》): CLK_SRC_CPU = 0x01000001 CLK_DIV_DMC0 = 0x00111713 CLK_DIV_DMC1 = 0x01011171 CLK_SRC_TOP0 = 0x01110000 CLK_SRC_TOP1 = 0x00001000 CLK_DIV_TOP = 0x00015470 CLK_SR
[单片机]
Exynos<font color='red'>4412</font>裸机程序,时钟操作
Exynos4412 内核移植(五)—— 驱动的移植
以移植自己制作的驱动,学习内核移植中的驱动移植,及 驱动程序的动态编译和静态编译 硬件环境: Linux 内核版本:Linux 3.14 主机:Ubuntu 12.04发行版 目标机:FS4412平台 交叉编译工具:arm-none-linux-gnueabi-gcc 一、静态编译 1、添加驱动文件 将写好的实验代码fs4412_led_drv.c 拷贝到 drivers/char 下 fs4412_led_drv.c 如下: #include linux/kernel.h #include linux/module.h #include linux/fs.h #include linux
[单片机]
Exynos<font color='red'>4412</font> 内核移植(五)—— 驱动的移植
基於tiny4412的Linux內核移植--- 中斷和GPIO學習(2)
平臺 tiny4412 ADK Linux-4.4.4 u-boot使用的U-Boot 2010.12,是友善自帶的,爲支持設備樹和uImage做了稍許改動 平臺 tiny4412 ADK Linux-4.4.4 u-boot使用的U-Boot 2010.12,是友善自帶的,爲支持設備樹和uImage做了稍許改動 我們以控制tiny4412上的LED1和LED2爲例,使用的GPIO是GPM4_0和GPM4_1對應的原理圖如下: datasheet如下: 在samsung的pinctrl驅動中加一些調試用的log: 1 diff --git a/drivers/gpio/gpiolib.c
[单片机]
基于tiny4412的Linux内核移植 -- PWM子系统学习(八)
平台简介 开发板:tiny4412ADK + S700 + 4GB Flash 要移植的内核版本:Linux-4.4.0 (支持device tree) u-boot版本:友善之臂自带的 U-Boot 2010.12 (为支持uImage启动,做了少许改动) busybox版本:busybox 1.25 交叉编译工具链: arm-none-linux-gnueabi-gcc (gcc version 4.8.3 20140320 (prerelease) (Sourcery CodeBench Lite 2014.05-29)) 实验二、用蜂鸣器测试backlight 一般LCD的背光的亮度调节都是通过控制输入给背光控制
[单片机]
Exynos4412启动过程分析
学习Exynos4412启动流程前,我们先看看三星4412芯片启动框图: 我们从图中可以看到4412内部有64K的ROM和256K SRAM,在ROM中已经固化好了一段代码,当硬件上电后首先运行的就是这段代码,这段代码三星起名为BLO(iROM BOOT 代码)。其作用是初始化SRAM,并将eMMC中256k代码拷贝到SRAM中,进行初始化DRAM。在图中我们很清楚看到这一个运行过程。 1、在芯片的iROM中已经固化一个代码,当硬件上电后就读取OM电平从而确定硬件设置的启动模式:0110为从eMMC启动,1000位SD卡启动; 2、把已经设置启动存储单元代码复制到内部RAM中并跳转到RAM运行; 3、运行OS;
[单片机]
Exynos<font color='red'>4412</font>启动过程分析
4412 gpio读取pwm
一、可以使用的GPIO管脚 去掉占用调用的GPIO驱动,包括leds,buzzer,camera ov5640,WIFI mt6620 ,Keyboards VIDEO_OV5640– Device Drivers – Multimedia support(MEDIA_SUPPORT ) – Video capture adapters(VIDEO_CAPTURE_DRIVERS )(去掉) MTK_COMBO_CHIP_MT6620– Device Drivers – MediaTek Connectivity Combo Chip Config – MediaTek Connectivity Combo
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved