ubuntu 步步为营之uclinux编译和移植(完整版)
本节主要包含(ubuntu10.04)
一,linux下的经常使用压缩解压缩命令
二,环境建立
三,内核编译
四,移植
一,linux下的经常使用压缩解压缩命令
在linux下常见的压缩文件格式有tar gzip zip bzip2 compress等
首先对于tar格式的,压缩和解压缩方式例如以下
.tar 解压 #tar -xvf file1.tar 压缩 #tar -cvf file1.tar
.tar.gz 解压 #tar -zxvf file1.tar 压缩 #tar -zcvf file1.tar
.tar.bz 解压 #tar -jxvf file1.tar 压缩 #tar -jcvf file1.tar
对于gzip格式的,压缩和解压缩方式例如以下
.gz后缀的 解压 #gzip -d file1.gz 压缩 #gzip file1
对于zip格式的,压缩和解压缩方式例如以下
.zip后缀的 解压 #uzip file1.zip 压缩 #zip file.zip file1 file2 file3
对于bzip2格式的,压缩和解压缩方式例如以下
.bz2 解压 #bunzip2 file.bz2 压缩 #bzip2 *
二,环境建立
首先要把交叉工具设置好(具体见上一篇文章,嵌入式开发环境建立)
别人提供的(
uClinux,下载地址:http://www.uclinux.org/pub/uClinux/dist/uClinux-dist-20051110.tar.gz
交叉编译环境:http://www.uclinux.org/pub/uClinux/uclinux-elf-tools/arm-elf-tools-20030314.sh
)
我用的是天祥提供的arm-elf-tools
把光盘代码中的软件arm-elf-tools-20040427.sh 复制到
linux 的根文件夹下运行./ arm-elf-tools-20040427.sh 结果出现+43错误
(有人说#chmod 777 arm-elf-tools-20040427.sh后再运行就不出错不知道没试过)
解决的方法:
#tail -n+43 arm-elf-tools-20040427.sh >> 1.tar.gz
#tar -zxvf 1.tar.gz
运行之后,在控制台中输入 arm-elf-gcc –v
假设成功安装了就会出现版本比如2.95.3
查看安装在了那里
#which arm-elf-gcc
检查是否将路径增加PATH的方法:
echo $PATH
应该能看到我们的编译工具所在的路径
然后准备好uclinux内核,我这里用的是2.4
我是直接放到了home/wenzer/share目录下这个目录是和windows共享的
所以比較方便
解压
#tar xvzf uClinux2.4.tar.gz
然后等待编译
三,内核编译
进到我们刚解压的目录下,须要改动个文件
#cd uClinux-dist
#make mrproper
等待》。。。
(我的出现了一个错误被忽略了说缺少relase我忽略了这个提示)
改动文件1
#vi linux2.4.x/arch/armnommu/vmlinux-armv.lds.in
在__sto__kallsyms = ,;
*(.got)后面加上:
romfs_data = .;
romfa.o
romfs_data.end = .;
然后wq退出
这一步假设不做,编译的时候会出错(等号两边都必须有空格)。
(4510须要改动makefile
在genromfs -v -V "ROMdisk" -f $(ROMFSIMG) -d $(ROMFSDIR)的下一行增加
arm-elf-ld -r -o $(ROOTDIR)/$(LINUXDIR)/romfs.o -b binary $(ROMFSIMG)
然后wq保存退出
)
#make menuconfig
出错了
>> Unable to find the Ncurses libraries.
>>
>> You must have Ncurses installed in order
>> to use 'make menuconfig'
解决方法:
运行命令: sudo apt-get install ncurses-dev 就可以!
(ncurses 用于make menuconfig界面显示
继续又一次make试试ok了进入了配置界面
四,移植



#make lib_only

#vi config/.config
然后将"CONFIG_USER_OLD_PASSWORDS=y"凝视掉"#CONFIG_USER_OLD_PASSWORDS=y"
#make user_only
#make romfs
#make image
假设这一步提示错误,无论他继续运行下一步
#make
这样就会在/image下生成我们想要的文件
ubuntu 步步为营之uclinux编译和移植(完整版)的更多相关文章
- Ubuntu+Apache+PHP+Mysql环境搭建(完整版)
Ubuntu+Apache+PHP+Mysql环境搭建(完整版) 一.操作系统Ubuntu 14.04 64位,阿里云服务器 二.Apache 1.安装Apache,安装命令:sudo apt-get ...
- Ubuntu+Apache+PHP+Mysql环境搭建(完整版)(转)
http://www.2cto.com/os/201505/401588.html Ubuntu+Apache+PHP+Mysql环境搭建(完整版) 一.操作系统Ubuntu 14.04 64位,阿里 ...
- Ubuntu常用命令速查手册-珍藏版-完整版
sudo apt-get install 软件名 安装软件命令 sudo nautilus 打开文件(有root权限) su root 切换到“root” ls 列出当前目录文件(不包括隐含文件) l ...
- 在Ubuntu Server14.04上编译Android6.0源码
此前编译过Android4.4的源码,但是现在Android都到了7.0的版本,不禁让我感叹Google的步伐真心难跟上,趁这周周末时间比较充裕,于是在过去的24小时里,毅然花了9个小时编译了一把An ...
- 第一章 Android系统的编译和移植实例
第一章 Android系统的编译和移植实例 这一章节主要介绍了Android系统的编译和移植技术,作为建立在Linux内核的基础上的Android操作系统,它的编译和移植不论在过程还是技术方面都和嵌入 ...
- JPEG库在Linux系统下的编译和移植【转】
本文转载自: 这篇文章介绍了jpeg库在Linux系统下的编译和移植,经过了亲自的验证,编译首先需要准备以下资源:jpegsrc.v6b.tar.gz(jpeg库),libtool-1.5.26.ta ...
- VoIP应用在Ubuntu 14.04下编译FFmpeg libX264及PJSIP
PJSIP是一个开源的SIP协议栈.它支持多种SIP的扩展功能,可说算是最目前流行的SIP协议栈之一了. 它实现了SIP.SDP.RTP.STUN.TURN和ICE.PJSIP作为基于SIP的一个多 ...
- ubuntu下使用反编译apk,工具dex2jar和jd-gui
ubuntu下使用反编译apk, 工具 1:通过apk-tool反编译出资源文件: http://code.google.com/p/android-apktool/ 2.首先使用dex2jar反编译 ...
- 【转】基于Ubuntu 14.04 LTS编译Android4.4.2源代码
原文网址:http://blog.csdn.net/gobitan/article/details/24367439 基于Ubuntu 14.04 LTS编译Android4.4.2源代码 ...
随机推荐
- Git 笔记一 Git简介
git 笔记一 什么是版本控制 所谓版本控制就是记录对文件的修改记录,这样以后就能回退到需要的 版本.比如你对一段代码进行了几次修改,有几次修改不想要了,如果 使用了版本控制,就可以回退到未做这些修改 ...
- Oracle-nomount/mount/open
通常所说的Oracle Server主要由两个部分组成:Instance和Database.Instance是指一组后台进程(在Windows上是一组线程)和一块共享内存区域:Database是指存储 ...
- Masonry的一些使用。
除了等距的有问题(懒得改了),其他用过挺正常的,我自己也是刚使用,有问题还请海涵. 地址:http://pan.baidu.com/s/1boyxu8Z
- AC自动机(模板)
#include <cstdio> #include <cstring> #include <iostream> #include <cstdlib> ...
- session问题和JSP
session问题和JSP 07. 五 / J2EE / 没有评论 一.Session开发中遇到的问题1.内存中的Session非常多,怎么办?2.用户在购物中.服务器停掉了该web应用(或者重新 ...
- RBAC 基于角色的权限管理的简单实现
1.什么是权限管理,权限管理就是对后台功能的细分,和对不同工作人员划分不同的工作的管理 RBAC是如何实现的,通过对不同控制器和控制器不同方法的限制,实现的管理. 要实现RBAC需要三张表,一张用户表 ...
- Spring HibernateTemplate的使用
Spring HibernateTemplate的使用 2008-03-25 11:38 2020人阅读 评论(0) 收藏 举报 springbeanhibernatesessiondaoclass ...
- win8系统intellij输入中文问题
用上新的intellij,不过在输入汉字时出现后面的被删除,网上找了,没有找到解决方案,只有自己解决了,感觉如果是intellij不兼容win8,那么就不能用intellij,那对于习惯了intell ...
- PHP 中 AJAX 中文乱码解决
最近,在用PHP做一个AJAX功能时,出现了中文乱码.在网上搜索了一上,很多是有说不过试过都不行,我页面的的编码是UTF-8的,MYSQL中也是UTF-8的.以前在.NET中也遇到这样的问题,但只是在 ...
- poj 3318 Matrix Multiplication
http://poj.org/problem?id=3318 矩阵A*矩阵B是否等于矩阵C #include <cstdio> #include <cstring> #incl ...