2008年10月31日星期五

Busybox移植

今天做了一个Busybox的移植实验。
我使用的是Busybox 1.7.0
编译器使用的是arm-linux-gcc 3.4.1。
编译Busybox有很多选项,但是以下的几步是必须要做的,剩下的选项自己看着进行勾选。
首先修改Makefile在175行和176行,本来是
ARCH ?= $(SUBARCH)
CROSS_COMPILE ?=
修改成
ARCH ?= arm
CROSS_COMPILE ?= arm-linux-
然后执行make menuconfig 进入Busybox Settings,然后进入Installation Options,然后勾选
[*] Don't use /usr
然后在Linux Module Utilities配置项中,因为我使用linux2.6内核,所以我取消
[*] Support version 2.2.x to 2.4.x Linux kernels选项,让这个选项变成这样
[ ] Support version 2.2.x to 2.4.x Linux kernels
在Miscellaneous Utilities配置项中,取消[*] taskset 的选中状态,让它变成这样
[ ] taskset

因为我使用glibc库,如果想编译成静态的,那么需要在Busybox Settings选项中的Build Options子选项中选择使用静态链接,然后
把applet目录下applet.c文件中如下的一堆注释掉就可以开始编译了
#if ENABLE_STATIC && defined(__GLIBC__) && !defined(__UCLIBC__)
#warning Static linking against glibc produces buggy executables
#warning (glibc does not cope well with ld --gc-sections).
#warning See sources.redhat.com/bugzilla/show_bug.cgi?id=3400
#warning Note that glibc is unsuitable for static linking anyway.
#warning If you still want to do it, remove -Wl,--gc-sections
#warning from top-level Makefile and remove this warning.
#error Aborting compilation.
#endif

然后进行其他的配置,保存配置后,执行make和make install两条命令就可以在_install目录下得到需要的东西了。

2008年10月30日星期四

miniGUI编译小记

因为项目需要,但是目前暂时又没有开发板,所有想在PC机上搭建一个miniGUI的开发环境。
首先是安装qvfb了,因为我用的ubuntu,所以,简单,sudo apt-get install qt3-dev-tools-embedded 就好了,接下来要编译miniGUI。
参考网络文章:http://blog.iyi.cn/hily/archives/2006/09/miniguii386.html,下载了那几个包,这篇文章写的也玄乎,这里会出错哪里会出错的。果不如其然,make一下一堆的错误,奇奇怪怪,其中一个是 keyboard.h:43: error: 说是缺少')'还是什么的,晕,改了半天都没用,后来去网上找半天,找到这一篇:http://www.lyore.cn/blog/read-205.html,不过我觉得他的解决办法是不是也很麻烦,我直接把那些个ushort定义了 typedef unsigned short ushort; 就好了。还有一个错误是说什么重复定义还是什么的,开始我用gcc 4.2进行编译的时候我的解决办法是把那个.c文件中的那个结构体定义删除了,不过后来我还是换用gcc 3.4进行编译,这个错误变成一个警告了。后来编译例子的时候,又出错,“libmingui.so: unreference to function 'pthread_kill_other_threads_np'”错误,这还是minigui代码线程库使用问题,解决办法是在minigui解压路径下,使用"grep -r pthread_kill_other_threads_np *"查找所有包含该函数的调用,然后注释掉。最后重新编译即可。

编译这东西真是累啊,也不知道那个作者是怎么编译成功的……

其实原因就是因为编译器的原因了,gcc的开发人员不知道怎么回事,总得搞个向后兼容才对呀-_-!

(本来这篇文章应该7月16号贴上来的,因为那天的网络原因,所以把文章保存与一文本文档中,今天被我不小心翻出来所以就贴上来了)

2008年10月27日星期一

弱冠之年

昨天是我二十岁的生日,不管是古代还是现在,都已经是成年人了,弱冠的说法是这么回事:古人二十岁行冠礼,以示成年,但体犹未壮,故称“弱冠”。

2008年10月16日星期四

接到HR的电话了

刚刚接到HR的电话,说通过上次的面试觉得我各个方面都还不错,说可以去他们公司实习了!

我很高兴,想一下就让全世界知道。我马上打电话给了爸爸妈妈,还有亲戚,让他们一起来分享这份喜悦。

我觉得我找到工作又和周围的人不一样,我早就规划好我毕业后是工作的了。而有些人是想考研,有些人无所谓,他们可能等到毕业那天再说。但是我不一样,我很急切,我想早点工作,我想早点锻炼,我想早点拿工资,呵呵

先写到这里吧,吃饭了回来,继续想想有什么要写的。:)

2008年10月4日星期六

如何移动VMware虚拟机

这次移动虚拟机,没有成功,害得我差点没抓狂,为了不让这种事情再次发生,虽然这件事情过去了,但是我还是去网上找了一下资料,后来在官方网站看到下面的信息,我终于明白我的移动为什么没有成功了。因为我在移动之前没有关闭客户机,我一直都是用暂停的,省得去开机关机。但是这次暂停仿佛是有问题的,官方的说明明确指出了这一点,虽然我觉得暂停的内存文件被删除了那么和关机没有什么两样,但事实上是我还是开机不了,GRUB选择之后,内核一直启动不了,不断的重启。下次我还是要试一下关机之后再移动看看有没有用。


Preparing a Workstation 5 Virtual Machine for a Move



1. Shut down the guest operating system and power off the virtual machine. If the virtual machine is suspended, resume it, then shut down the guest operating system.



2. Do one of the following:



  • If you are moving the virtual machine to a new host and have a network connection between the original host machine and the new host, you are finished with the preparations on the original host.


  • Otherwise, you need to have a way of moving the virtual disk (.vmdk) files from the virtual machine's directory to the new host. You could move them to a shared network directory, for example, or burn them to CD-ROMs if they are not too large.



    Once you know how you are going to move the virtual machine, go to Moving a Workstation 5 Virtual Machine to a New Host.



  • If you are moving this virtual machine to another directory on this host, then you are ready to make the move. Copy all the files in the virtual machine's original directory to the new location.


  • If you stored any files in directories other than the virtual machine directory, be sure to move them into a directory of the same name and same position relative to the location of the virtual machine.



    Start VMware Workstation and open the new virtual machine you just created. Choose File > Open, then browse to the virtual machine's configuration (.vmx) file.




    还有移动后网卡不能用的问题,参考这个


    如果把vmware安装后的所有文件(vmx等)拷贝到另外一台主机,那么使用同样的vmware station可以继续使用已经安装的系统而不必重新安装。但是有一点要注意,就是网卡的问题。当拷贝后第一次启动,vmware会提示此系统是否是copy过来的,如果是那么就会为虚拟系统的网卡重新分配一个mac地址,可以通过查看vmx文件知道mac的详细地址。

    在debian linux虚拟系统中网卡的mac地址在 /etc/udev/rules.d/z25_persistent-net.rules中,只要把eth0或者对应需要的网卡标识对应到新的MAC地址就可以。同时需要修改/etc/network/interfaces中的IP地址,不然在同一个局域网中会产生IP冲突。修改完毕后重新启动就可以了。

    应该有办法不重新启动,但是还没有找解决方案,可能通过/proc可以避免重启吧。

    My ECG Device (9)

    和上次讲的不一样,这篇日志还不是讲在北京的事情。是这样的,我想在我画的软键盘后面加一个Backspace退格键。但是我这边没有开发环境,因为docodai的电脑好,所以我以前是把开发环境装在他的电脑上的,他BT,国庆回家才几天也把一个台式机给抬回去,真不累……所以他抬回去之前我把那个虚拟机拷贝出来,但是前天晚上我把那个拷贝出来的虚拟机放在别人的电脑上居然不能运行,弄了很多办法都没用,后来我只有这样了……

    我用QQ远程协助连接上我同学的电脑,然后在里面打开我的虚拟机,然后在里面添加了一句话,从新编译,接着把那个编译生成的文件通过邮箱发到我这边来。

    上面的过程说起来简单,我其实是吐血了一个下午!首先速度很慢,我打一个字,20秒后才有反应,我真佩服我的耐心了……然后还有我要设置NFS什么的,因为是在别人的电脑上,一切都得设置,超级郁闷啊。然后是我有一点疏忽了,我直接在里面编程是没用的,因为我的源代码是GB2312编码的,而linux采用的UTF-8编码,第一次发送回来的文件我放入开发板运行,直接是一堆乱码,搞得我没郁闷死,要知道这样搞一次回来花我多少精力啊……没办法,我只有从我这边再编程一次然后把源代码发送回去,没想到这次发送回来的编译结果又吐血:一点反应都没有!后来查清楚是因为我发送了一个错误版本的源代码过去,幸好用gedit编辑的文件会产生一个后面加~符号的备份文件,于是我在我同学那边把那个备份文件发送回来,编辑后发送回去再编译,然后再发送回来,这次终于成功了。

    昨天下午我快没累死:(

    winter in my heart

     [audio: http://bbs.ynnubs.net/music/080929/winter%20im%20my%20heart.mp3 ]




    winter has come冬天已经来了

    farewell to the sun太阳离得好远

    it's getting colder every single day一天比一天冷

    you are not here你不在这里

    can't stand you're not near不能忍受你不在身边

    I'll wait for you forever and I pray我会等待并为你祈祷

    My Fantasy makes believe that you're with me我仿佛相信我们还在一起

    I have winter in my heart冬天在我心里

    cause I miss you more than words can say因为我如此想念你以至无法言语

    when nights are long and lonely without you没有你的晚上是漫长和孤独的

    I have winter in my heart冬天在我心里

    count the hours every single day每一天都在数着时间

    that lonesome time is too sad to be true那种幽寂是那样的真实那样伤感

    got winter in my heart就像冬天在我心里
    snow falling down雪一直下

    and you're not around你不再回来

    I'm all alone in that white wonderland我孤独的待在那白色的妙境里

    taking a walk漫步

    there's no one to talk没有一个人和我说话

    we used to be together hand in hand我们过去经常是手牵手在一起

    my fantasy makes me believe thar you're with me我仿佛相信我们还在一起

    I have winter in my heart冬天在我心里

    cause I miss you more than words can say因为我如此想念你以至无法言语

    when nights are long and lonely without you没有你的晚上是漫长和孤独的

    I have winter in my heart冬天在我心里

    count the hours every single day每一天都在数着时间

    that lonesome time is too sad to be true那种幽寂是那样的真实那样伤感

    got winter in my heart就像冬天在我心里

    I have winter in my heart冬天在我心里

    cause I miss you more than words can say因为我如此想念你以至无法言语

    when nights are long and lonely without you没有你的晚上是漫长和孤独的

    I have winter in my heart冬天在我心里

    count the hours every single day每一天都在数着时间

    that lonesome time is too sad to be true那种幽寂是那样的真实那样伤感

    winter in my heart就像冬天在我心里

    2008年9月30日星期二

    My ECG Device (8)

    决赛通知下来了,我进决赛了!事实上我知道的有交那个论文的都进了,这让成功变的不那么兴奋,不过还是蛮高兴的。不管它,既然肥肉到手,吃了再说,不过学校那么小气,只能报销硬座还是让我有点不爽,要知道去北京很远的啊,自己得掏两百块钱车费一趟!有点郁闷。我也想趁这个机会拿个奖,再去找找老同学,也参加一下招聘会什么的,那就值了,呵呵。下一篇连载日志应该是讲在北京的事情了 :)

    My ECG Device (7)

    08-08-26 20:22
    回到泉州,又回到了晚睡晚起的生活……


    呵呵,确实是这样,在软件园学习的时候,生活超级有规律,晚上十二点半左右睡,早上七点起,回到泉州,这件事情基本很难做到~!-_-!

    大概9月4号吧,时间差不多要把初赛论文交上去了,但是我都不知道怎么写,以至于只写了一点点,但是没办法,再不写就来不及了,于是那天晚上通宵写论文……早上八点写完,我也很佩服我自己的。然后是去打印,刻录光盘,然后想查一下哪里有顺丰的快递网点,因为早就听说顺丰是最快的啦,后来发现学校附近没有网点,要等那个人过来拿,而且是下午。我就出去找别家的快递了,先是到邮局,问一下EMS,工作人员说华大这边一天只有一趟就下午4点,城东邮局11点有,但是我一看表已经11点了,晕。然后我没办法就只有出去找找后面那些什么什么通的快递了,找到一家申通,问了一下说12点有一趟,听到老板信心满满的后天到的承诺后,我把东西给了他了,之后就回去玩了(我倒也不太想睡,还是觉得玩比较重要),然后下午睡了个午觉睡到晚上8点,起来赶快到申通的网站上查下自己的单号,发现居然一点反应都没有,当时老板说中午12点有寄出去的啊,感觉上当受骗了似的,于是出去找老板问问,结果他说东西刚刚才拿走,晕。这老板真不厚道,知道你这么完才送走,我肯定用EMS或者顺丰了。这才去吃了晚饭,晚上没事做,看网页,聊天一边刷申通的网站,没想到一直到凌晨5点都没有结果,我是真的快气晕了,算了去睡了。中午起来一看才有了一个记录,终于放心一点了,我去网上搜索申通,发现有不少人对申通的龟速都有意见的,说一个东西一个礼拜,甚至几个礼拜都没寄到,但是顺丰就都是好评,这个时候我就跟上了贼船似的。唉,怎一个郁闷形容的了?后来嘛等了好几天东西终于是到了,但是我知道以后稍微重要一点的东西我都不会用申通了。终于一个月的事情终于告一个段落,接下来就等着决赛通知吧。

    My ECG Device (6)

    老久没写博客,现在变成写回忆录了,我记得当时上街确实有值得写的东西啊,但是这么久忘了,没什么好写的了-_-! 只好把唯一有点印象的事情都罗列一下了。

    首先软件园去火车站的公交车只要一块钱但是却坐了半个多小时,厦门的公交车比泉州的可便宜的多了。逛街分两次,第一天在火车站旁边的那个沃尔玛里买了一只永硕表(我看中一只卡西欧的表实在可爱,但是却贵十倍),以后有钱了再买卡西欧吧:) ,话说我还是第一次认真的逛这栋商贸城,以前虽然来过好多次,但都是来去匆匆,没想到往上走,居然有这么多店,最后是5楼了,我过去一看有点傻眼了,这里好吃的实在太多了,一边看一边流口水,后来搞了一碗砂锅解决了。第二天逛是先到莲扳还是什么地方吧,反正哪里有一个图书城,进去一看果然不同反响,书还真多,不过都是按照原价卖的,真想不通怎么会有人买,我都是网上购书的,一般都打七五折,呵呵。然后去了电子城,买了一个OVC C50的耳机,应该是40元成交。其他没什么好说的了。

    2008年9月21日星期日

    My ECG Device (5)

    大概到了8月15号左右吧,在与学长聊什么时候回去的时候我突然发现原来开学时间是9月1号而不是之前我一直认为的9月10号。突然我就感觉到时间很紧了,但是到那个时候为止还没有做出一点东西来呢,这天晚上回去趁洗澡的时候仔细的计划了很久,等L学长回来的时候我就跟他讲了我的计划:5天之内完工。我跟他讲的目的是为了给自己一点无形的压力,督促自己。学长觉得不可能。我说如果明天项目没有大的进展的话,那么明天晚上我就不回来睡觉了,在实验室呆通宵。

    第一天效率还算过得去,结果第二天我就回来睡觉了。第二天白天过后,我还是感觉到如果这样下去是来不及的,于是我晚上没有回去睡觉,在实验室一直做到早上4点,然后去实验室一个小隔间睡地铺,7点又起来继续工作了。现在是第三天了,直到中午,我才回住处,刷牙洗脸,然后去软件园外的岭兜小区吃了饭,回来洗个澡,(这个顺序才不会刚洗完澡又全身出汗)一身舒爽的回实验室继续工作,这天晚上我到一点的时候就感觉很困了,我跟还在哪里工作的一位学长打个招呼叫他回去的时候叫我起来,我则先去地铺睡,等到两点多学长叫我起来的时候我发现我实在太困了,实在起不来,于是继续睡,大概7点被我的闹钟给叫起来了,继续工作。这个时候是第4天了,这个时候工作进展了差不多一半了,我还得加把劲,像昨天一样,我还是工作到中午,然后回去刷牙洗脸,吃饭,再洗澡。完后,我直接把洗漱的工具和凉席,蚊帐都一起带到实验室去了。这天晚上我一直工作到早上7点,然后发现自己处于一种无意识状态,于是去洗手间刷牙洗脸准备睡觉,这个时候我发现窗外的朝霞很漂亮!多久没有见过这么漂亮的朝霞了,或者从来都没见过这么漂亮的呢,顿时心情一阵舒爽,进实验室打地铺睡了,8点我又起来了。这是第5天了,第5天的情况和前两天没什么两样,反正是工作到凌晨几点的时候,我感觉完工了,于是就去睡了一觉,直到第6天早上9点学长学姐们都进来我才起来。

    一觉起来,发现自己真的在5天之内完成了任务,心情一阵舒爽,这天已经是8月21号了,于是打算回泉州了,口袋里剩的钱也只有几十块了。上网逛逛google reader,校内什么的,就到中午了,我收拾了一下东西,感觉今天回去还是有点赶,于是打算第二天回去,于是下午我就去逛街了(我一个人去,我不喜欢跟男的去逛街,但又没女生陪我逛),逛街的具体内容下一篇日志讲。回来跟学长学姐打个招呼说要第二天回去,本来以为要自己买票回去,没想到学长说明天有一位学长回过来可以带学校公车的票过来,哇塞,又给我省了30块车票钱。于是22号那天我又跟21号一样,上午上网瞎逛,下午去上街,晚上拿到车票了,收拾好东西,第二天上午下载拳皇单机游戏玩了一个上午。跟学长学姐们道别后,我就坐车去了火车站,踏上了回泉州之路……

    2008年9月7日星期日

    My ECG Device (4)

    到厦门软件园后没几天,就是八月八日了,也就是奥运会开幕那天,相信大家都有看啦。但是我们那边有特特点就是电脑多,但是没电视看,唯一有一个电视机还是黑白的,但是没有有线信号接入,甚至天线都没有,晕啊。于是我们最后商量好用网络电视看,我们决定把所有的网络带宽集合起来,忘了说下,我们这里是N多人共用10M的带宽,因为又迅雷,BT这种东西,所以网络从来没有快过,我在哪里听歌,听了一个月都是我MP3里的那些歌,为什么不载歌?因为下载速度实在是太慢了……不过因为要看奥运会,所以我们所有的人把自己的下载工具全部关掉,不用网络,集中带宽到一台电脑上放,大家一起来。你可能觉得纳闷了,这么多人一起看一台电脑?呵呵,这边就是设备仪器多,我们又投影仪!我们把投影机接上去后,把灯关了,就跟放电影一个感觉,哈哈。我们晚上七点,大家就都搬来椅子各自坐好等着看了,看完新闻联播,和一系列的广告,这些都很流畅,但是等到八点的时候,网络突然就又问题了一卡一卡的,一卡半天的。我们想是很多新用户接入导致P2P网络不平衡的原因,但是这之后网络也没好过,往往到精彩时刻就卡上半分钟,郁闷啊,不过电影的效果不错。这个晚上跟大家一起看开幕式,蛮好玩的。

    2008年9月6日星期六

    My ECG Device (3)

    这里讲些中途一段时间的琐事了。

     吃饭问题,吃饭要走老远,果然如同G学长说的,贼贵的,在学校卖2元的,这里卖4元,学校卖1元的,这里卖两元,学校卖5毛的,这里卖1元。翻倍抢钱啊……

     软件园的风景很不错,有山有水的,房子不高,学长说是为了防止跳楼,风景好是给人放松的,做IT行业很压力大的,需要放松。

    我每天晚上11点就回寝室,其他的学长一般是12点半以后回来,这中间的时间我就可以洗澡,洗衣服了,没人跟我抢着用水龙头,然后我就睡觉了,我不知道他们具体什么时候回来的,因为我睡着了:) 早上我一般7点钟就自然醒,这种感觉实在是太美妙了,其实我在学校也想早睡早起了,但是几分没这么干过。早睡早起果然一天都精神焕发啊。

      每天早上我起床后,先去买早餐,早餐还不错,不算贵,蛋糕有6毛小的,1块2大的,然后买个菜包7毛(我对肉包有阴影),再来一个花生奶1块2或者八宝粥2块,早餐一般就这样,很爽啊,那个八宝粥是热的哦,对了,里面还有两个鹌鹑蛋^_^ 不贵吧。学长学姐们好像很少有吃早餐的习惯,我到实验室的时候一般7点半吧,他们一般8点半后过来,对了,交待一下,我们实验室有两个,一个大的,一个小的,我就在那个小的里面,而且烧开水的壶在我旁边,所以他们进来我知道,陆陆续续的,但是很多人一进来就泡上一杯豆浆,我就奇怪了,他们的豆浆粉应该是一起去买的吧,要不然怎么每人一包呢?

    中饭晚饭的时候,总会有那位学长过来叫:吃饭了吃饭了,然后大家一起去。其实这边有三个实验室,两个是电子系的,我就是电子系的,还有一个实验室是计算机系的,那个实验室的吃饭的时候就跟我们不是一起去了,看了关系还是差些。

    吃饭还得说下,星期一到星期五软件园里的食堂才会开,星期六星期天不是叫外卖就是自己走到软件园外的岭兜小区去吃了,走好远,真可怜。 

    有天晚上口渴的厉害,但是没有水喝,于是第二天起了个大早去旁边的那家YES(悦士)便利店买了瓶水,TNND,居然要两块钱!于是之后我就去岭兜的超市买了好几瓶水过来储存了。

      我问L学长有没有数码相机,我拍些照片以后留念一下,特别使我们睡觉的环境,没想到他说如果我拍了数码相机就要被砸了,呵呵。那个睡觉的地方还真不像是正规学生住的地方,比民工住的地方还差啊……

    待续待续……