原创 Vmware+Ubuntu构建开发环境

2009-1-7 15:21 2335 0 分类: MCU/ 嵌入式

写在前面:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


基本上是从零开始,我想我遇到的问题很多其他新手也会遇到,所以写下来希望和同路人们探讨、学习。尝试->报错->到网上找解决方案->继续尝试,我就是这么做的。底下可能写得比较啰嗦,只是为了说清楚,也可能说的有错,估计是我理解的不对,欢迎高手指点。


安装步骤:


1.         安装vmware


我安装的vmware workstation v6.6.6.45731


2.         vmware上安装Ubuntu


新建一个虚拟机,选择Ubuntu系统,分配硬盘20G(我还打算弄嵌入式linux,所以就留大点儿了)。在setting选项里,CD加载硬盘上的iso文件,然后启动虚拟机就能安装新系统了。还有,在setting里的网络部分,点选NET,这样安装完成就可以直接上网了。在我安装的是Ubuntu8.10,进去后选择安装Ubuntu(好像是选第二个)。后面就没啥说的,照着要求走就ok了。


3.         安装包


安装完的系统缺少很多编译用的包,是Ubuntu默认不安装造成的。


第一步,启动终端(应用程序->附件->终端),然后键入“sudo passwd root”回车。终端会提示键入新的密码,按照提示重新键入就好了。


第二步,允许root登陆。Ubuntu默认不允许root登陆,所以需要开启,方法是,系统->系统管理->登陆窗口,选中“安全”选项卡,在“允许本地系统管理员登陆”前挑勾。然后重新登陆,用户名键入“root”,密码就键入第一步里输入的那个密码就好了。后面的步骤都认为是用root登陆了。


第三步,安装更新的包。方法,系统->系统管理->新立得软件包管理器,第一次启动先点刷新,这时系统会下载包信息。下载速度白天很慢,夜里很快。不知是软件源的问题还是校园网的问题。包信息更新完成后,就可以安装需要的包了。需要安装的包有build-essentialkernel-packagelibncurses5-devlinux-headers-generictk8.4tk8.5tcl8.4tcl8.5tktclmake menuconfig时用的,不然会报错)。忘记是不是还有别的包了,只记得这些。如果编译报错,可能还有漏了的包,网上搜一下看少哪个就装一下。安装的方法就是ctrl+f,然后键入包名,回车,就搜索到了,双击包就行了。都选好后点更新就安装了。


4.         安装VMware tool


ctrl+alt,切换到主机。点选VM->Install VM-tools,然后按install。桌面上会有光驱加载的虚拟安装光盘。打开后把VMwareTools-6.0.0-45731.tar.gz拷贝到本地文件夹下(比如桌面),右键->解压到本地,进入解压后的文件夹,双击vmware-install.pl,点“在终端中运行”。按照提示一路回车。完成后,鼠标可以自由在主机和虚拟机之间切换,但是会有不能共享的问题,到现在我也没解决。共享我采用了网络的方式。对要共享的文件夹,右键->共享选项,然后什么都允许就行了。对于主机是vista的系统,利用工作组可以实现互访,但是xp的主机好像不行,我用xp建立了名为workgroup的工作组,这时可以实现虚拟机中的文件夹共享。我认为是因为xp默认mshome工作组的缘故。反正不影响使用,我就不再管他了。


5.         安装arm-linux编译器


我使用的是TQ2440套件,光盘自带了各种编译需要的压缩包。基本方法就是把压缩包拷贝到/opt/EmbedSky/目录下,然后从终端进入到该目录,运行“tar xzfj×××× -C /”。其中,××××代表压缩包的名字。


解压cross-tools后,需要设置环境变量。找到/etc/profile,双击它,在“unmask 022”前面添加:



#自己添加


#PATH="$PATH:/usr/local/arm/2.95.3/bin"


#export PATH


#PATH="$PATH:/usr/local/arm/3.3.2/bin"


#export PATH


PATH="$PATH:/opt/EmbedSky/crosstools_3.4.1_softfloat/arm-linux/gcc-3.4.1-glibc-2.3.3/bin"


export PATH


#自己添加的结束



其中“#”代表注释,这样可通过修改“#”改变arm-linux-gcc的版本。在终端键入“source /etc/profile”以优先使用在/etc/profile里定义的编译器。


还有,在编译busybox之前要修改/opt/EmbedSky/BusyBox-1.2.0/scripts/config/mkconfigs,双击它,点显示(即用gedit打开),在第49行(gedit的右下角有显示行数和列数),改为“echo "`sed 's/\"/\\\\\"/g' $config | grep "^#\? \?CONFIG_" | awk '{print "\\"" $0 "\\"";}'`"”。对比一下就是删掉多余的“\”和“”。


小结:


编译环境基本上建立起来了,如果有什么错漏还请高手不吝赐教。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
0
关闭 站长推荐上一条 /1 下一条