下载:http://download.fedoraproject.org/pub/fedora/linux/releases/9/Fedora/i386/iso/Fedora-9-i386-DVD.iso
1.文本界面安装;什么软件包都不装。默认分区。简体中文支持。指定IP。
2.进入图形界面后:全英文的。
修改/etc/inittab---->更改为启动到图形方式5后,自动登陆更新界面为中文。
3.添加路由:route add default gw eth0 以便可以上网。
4.打开Firefox上网,为脱机状态,在文件菜单下,去掉脱机状态。
脱机的原因估计是:NetworkManager这个服务的关系,把这个服务禁止掉,重新激活网卡,再开firefox就不会脱机了。而且“添加删除程序”也可以用了。
5.修改/etc/yum.conf,在最后增加
[guangpan]
name=guangpan
baseurl=file:///media
gpgcheck=0
这样就可以试用本地光盘和yum来安装软件了。
mount /dev/cdrom /media
6.安装中文输入法:
yum install scim-python-chinese
设置输入法的开启键为ctrl+space
直接运行scim提示FrontEnd模块装载错误。。。。输入法启动不了。
7.安装openoffice-write后,输入法自动可以使用。。。。
打开firefox,自动关闭,据查firefox与scim有冲突。
在终端下运行firefox,却好好。。。。。
#mkdir /usr/src/redhat
#rpm -Uvh kerenl-2.6.25-14.fc9.src.rpm
#cd /usr/src/redhat/SPECS
#ls
kernel.spec
#rpmbuild -bp --target i686 kernel.spec
#cd ..
#cd BUILD
#ls
kernel-2.6.25
# cd kernel-2.6.25
# ls
linux-2.6.25.i686 vanilla-2.6.25
# cd linux-2.6.25.i686
接下来是编译内核,一定要编译内核,否则无法编译驱动程序。
#cp configs/kernel-2.6.25-i686.config .config
#vi Makefile
设置EXTRAVERSION的值 ,不修改这个值,insmod驱动程序的时候会提示错误,demsg | tail显示:version magic '2.6.25 SMP mod_unload 686 4KSTACKS ' shoud be '2.6.25-14.fc9.i686 SMP mod_unload 686 4KSTACKS'
EXTRAVERSION = -14.fc9.i686
#make mrproper
#make oldconfig
#make
#make modules
#make clean #执行后可以减少磁盘空间,似乎不影响自己的驱动的编译???与make mrproper什么区别?
# cd /usr/src
#mkdir kernels
# ln -s /usr/src/redhat/BUILD/kernel-2.6.25/linux-2.6.25.i686 /usr/src/kernels/2.6.25-14.fc9.i686
--------------------------------------------------------------------------------------------------------------------------------------------------
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void)
{
printk(KERN_ALERT "Hello, world/n");
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT "Goodbye, cruel world/n");
}
module_init(hello_init);
module_exit(hello_exit);
--------------------------------------------------------------------------------------------------
Makefile:
obj-m := hello.o
KERNELDIR ?= /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
ALL:
$(MAKE) -C $(KERNELDIR) M=$(PWD)
CLEAN:
rm -rf *.o *~.core .depend .*.cmd *.ko *.mod.c .tmp_versions
------------------------------------------------------------
9.编译ldd3的例子scull;
CFLAG,改成EXTRA_CFLAG
没有<linux/config.h>,可以注释掉,或者改为<linux/autoconf.h>
access.c中添加#include<linux/sched.h>