Category Archives: GSoC

>[GSoC] Summary 2009.05.03 – 2009.05.10

>Coly suggested me to write in English, so I’ll try my best…I’m afraid I can’t express myself exactly.

Another week passed and unfortunately I had to do my work from beginning, as I walked towards a wrong direction. Most of my last twenty-days work became useless. But I’m not sad and don’t worry about it. I got to know what should I do next exactly and how much work left. Below is the detail.

In April I did two things, building rpm in Debian and cross-compiling an OpenSuSE based bootable system.
The cross-compiling stuff didn’t get much progress. I cross-compilied OpenSuSE’s sysvinit, elfutils, udev and rpm to the bootable system, other basic packages(coreutils, bash, zlib etc.) were from upstream. This system was unstable, sometimes I got “unable to determine your tty name” when login. But there was a good news, the cross-compilied rpm was working!
On the other hand, the rpm-building process went smoothly. I built 73 src.rpm packages on Debian. Then in May I got the bad news, I shouldn’t build rpms on Debian.

What should I do is cross-compiling an OpenSuSE based bootable system then building rpms on this system not Debian. So I need to cross-compile many libraries, utilities. After finishing the summary of work before May on May 7th, I started cross-compiling the OpenSuSE bootable building environment. This is the most important work and the foundation of later works. By now I have finished binutils, gmp, mpfr, gcc, sed, libsepol, libselinux, udev, e2fsprogs, and now I’m working on coreutils which has lots of dependency problems.

Have to go to bed now, hope all packages I’ve done are OK.

>[GSoC] 2009年4月13日 目前的进度和遇到的问题以及以后的工作

>

最近一直在忙碌GSoC的opensuse移植到gdium的项目。从3月20号就开始了吧,也有快一个月的时间了。
从最开始的写proposal到后来的修改,到之后的交叉编译安装一些软件,到最近的想用qemu-system-mips64el启动内核。遇到了不少困难。
首先是交叉编译环境的构建。这个就按照youbest的文章来构建。但是第一次做的时候想着多用opensuse里的包,所以不是完全按照他的文章来做的,比如gcc就用的是opensuse11.0用的4.3版本,后来发现4.3版还没有对-march=loongson2f的支持;再比如内核版本使用的是2.6.27,但是这个版本没有loongson2f的各种补丁。目前在第二次构建这个交叉编译环境,准备完全按照youbest的文章来做。结果还未知。
其次是编译出来的内核不能够使用qemu-system-mips64el来启动,启动的时候终端没有任何输出,而自己编译的内核和从gdium上下载的fred做的内核file的结果都是

ELF 64-bit LSB executable, MIPS, MIPS-III version 1 (SYSV)

而能够启动的一个debian的版本的file结果是

ELF 32-bit LSB executable, MIPS, MIPS32 version 1 (SYSV)

使用命令

qemu-system-mips64el -kernel vmlinux [-initrd initrd.gz] -append “root=/dev/ram console=ttyS0” -nographic

可能是对这种MIPS-III类型的内核支持不好吧。不过在龙芯论坛上看到falcon的文章说内核配置的时候机器类型选择malta就能够启动,而debian的内核确实也是malta类型的。下一步就打算编译两种类型的内核都试验一下。前提是第二次完成交叉编译环境的。
最后,如果用malta类型的编译出来的内核也不能启动,那么只能尝试直接在debian系统上直接安装rpm构建环境。不过这个在今天试验的时候发现要使用rpmbuild命令的话,spec文件和rpm系统配置还有很多工作要做,工作量会不少。但是也不能确定自己交叉编译出来的环境在使用rpmbuild的时候是否也要进行rpm系统的复杂配置和大规模修改spec文件。
要熄灯了,先这样吧。