免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2367 | 回复: 9
打印 上一主题 下一主题

[操作系统] 怎么把ubuntu10.04内核3.5 改为2.6 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-03-07 11:04 |只看该作者 |倒序浏览
我有一个usb驱动,供应商提供了驱动,但是驱动要求的是2.6内核,我的是3.5.

每次一make 就 说linux/init error

请教大神如何解决?

论坛徽章:
1
水瓶座
日期:2013-10-14 10:55:54
2 [报告]
发表于 2014-03-07 16:40 |只看该作者
你好  可以直接下载linux-2.6的内核,解压后
cd linux-2.6
copy /boot/xx.config ./.config 拷贝当前系统的配置
make oldconfig 会相互比较列出额外的配置,需要你选择,选好了配置完成
make all  会编译内核和模块
make modules_install  会安装模块到/lib/modules/linux-2.6/XX
make install  会安装内核到/boot目录下,现在就OK了
运行update-grub 会更新你的启动项,就是grub更新一下,他会找到/boot下新安装的内核,开机就默认启动新内核
gedit /etc/default/grub  为了保险,编辑启动项,使grub开机会显示所有的启动项菜单,让你选择,而不是自动启动默认的,所以有问题还可以选择启动原来的

GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
#GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=-1

最后要说明的是,如果ubuntu在虚拟机上,是SCSI磁盘的话,还要在 /linux-2.6里   mkinitramfs /boot/initrd.img-2.6-XX
这是内核启动要挂载后加载SCSI驱动的,名字和/boot下的新内核最好对应。

祝好!

论坛徽章:
1
水瓶座
日期:2013-10-14 10:55:54
3 [报告]
发表于 2014-03-07 16:42 |只看该作者
那个USB驱动是源代码吗?
如果是,不需要把内核版本降低
可以直接修改usb驱动的

论坛徽章:
0
4 [报告]
发表于 2014-03-08 18:27 |只看该作者
谢谢,我直接下载了一个可以安装的内核。然后跟新了gurb。但是在make驱动的时候还是有出错了,。

回复 2# archer239915


   

论坛徽章:
1
水瓶座
日期:2013-10-14 10:55:54
5 [报告]
发表于 2014-03-08 20:36 |只看该作者
请问是什么错误啊?

论坛徽章:
0
6 [报告]
发表于 2014-03-08 22:43 |只看该作者
root@ubuntu:~/Desktop/driver_linux/PssdLinux-ARM-130626# ls
fjveincam.c  fjveincam.h  Makefile
root@ubuntu:~/Desktop/driver_linux/PssdLinux-ARM-130626# make
make[1]: Entering directory `/usr/src/linux-headers-2.6.35-22-generic'
  CC [M]  /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.o
In file included from include/linux/irqflags.h:57,
                 from /usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/system.h:61,
                 from /usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/bitops.h:27,
                 from include/linux/bitops.h:22,
                 from include/linux/kernel.h:17,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:19:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/irqflags.h:11: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from /usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/bitops.h:27,
                 from include/linux/bitops.h:22,
                 from include/linux/kernel.h:17,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:19:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/system.h:112: warning: "__LINUX_ARM_ARCH__" is not defined
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/system.h:118: warning: "__LINUX_ARM_ARCH__" is not defined
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/system.h:122: warning: "__LINUX_ARM_ARCH__" is not defined
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/system.h: In function '__xchg':
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/system.h:255: warning: "__LINUX_ARM_ARCH__" is not defined
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/system.h:262: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from /usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/bitops.h:27,
                 from include/linux/bitops.h:22,
                 from include/linux/kernel.h:17,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:19:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/system.h: At top level:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/system.h:330: warning: "__LINUX_ARM_ARCH__" is not defined
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/system.h:333: error: #error "SMP is not supported on this platform"
In file included from include/linux/bitops.h:22,
                 from include/linux/kernel.h:17,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:19:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/bitops.h:237: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from include/linux/kernel.h:17,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:19:
include/linux/bitops.h:148: error: conflicting types for '_find_first_bit_le'
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/bitops.h:162: note: previous declaration of '_find_first_bit_le' was here
include/linux/bitops.h:158: error: conflicting types for '_find_first_zero_bit_le'
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/bitops.h:160: note: previous declaration of '_find_first_zero_bit_le' was here
include/linux/bitops.h:182: error: conflicting types for '_find_next_bit_le'
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/bitops.h:163: note: previous declaration of '_find_next_bit_le' was here
include/linux/bitops.h:192: error: conflicting types for '_find_next_zero_bit_le'
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/bitops.h:161: note: previous declaration of '_find_next_zero_bit_le' was here
In file included from include/linux/swab.h:6,
                 from include/linux/byteorder/little_endian.h:12,
                 from /usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/byteorder.h:21,
                 from include/linux/kernel.h:21,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:19:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/swab.h:25: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from /usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/thread_info.h:16,
                 from include/linux/thread_info.h:56,
                 from include/linux/preempt.h:9,
                 from include/linux/spinlock.h:50,
                 from include/linux/mmzone.h:7,
                 from include/linux/gfp.h:4,
                 from include/linux/slab.h:12,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:22:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/fpstate.h:32: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from include/linux/prefetch.h:14,
                 from include/linux/list.h:6,
                 from include/linux/preempt.h:11,
                 from include/linux/spinlock.h:50,
                 from include/linux/mmzone.h:7,
                 from include/linux/gfp.h:4,
                 from include/linux/slab.h:12,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:22:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/processor.h:94: warning: "__LINUX_ARM_ARCH__" is not defined
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/processor.h:114: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from include/linux/preempt.h:11,
                 from include/linux/spinlock.h:50,
                 from include/linux/mmzone.h:7,
                 from include/linux/gfp.h:4,
                 from include/linux/slab.h:12,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:22:
include/linux/list.h: In function 'list_del':
include/linux/list.h:106: error: implicit declaration of function '_AC'
include/linux/list.h:106: error: 'UL' undeclared (first use in this function)
include/linux/list.h:106: error: (Each undeclared identifier is reported only once
include/linux/list.h:106: error: for each function it appears in.)
include/linux/list.h: In function 'hlist_del':
include/linux/list.h:608: error: 'UL' undeclared (first use in this function)
In file included from include/linux/spinlock.h:86,
                 from include/linux/mmzone.h:7,
                 from include/linux/gfp.h:4,
                 from include/linux/slab.h:12,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:22:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/spinlock.h: At top level:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/spinlock.h:4: warning: "__LINUX_ARM_ARCH__" is not defined
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/spinlock.h:5: error: #error SMP not supported on pre-ARMv6 CPUs
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/spinlock.h: In function 'dsb_sev':
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/spinlock.h:10: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from include/linux/spinlock.h:386,
                 from include/linux/mmzone.h:7,
                 from include/linux/gfp.h:4,
                 from include/linux/slab.h:12,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:22:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/atomic.h: At top level:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/atomic.h:30: warning: "__LINUX_ARM_ARCH__" is not defined
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/atomic.h:153: error: #error SMP not supported on pre-ARMv6 CPUs
In file included from /usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/page.h:26,
                 from include/linux/mmzone.h:20,
                 from include/linux/gfp.h:4,
                 from include/linux/slab.h:12,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:22:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/glue.h:119: error: #error Unknown data abort handler type
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/glue.h:160: error: #error Unknown prefetch abort handler type
In file included from include/linux/mmzone.h:20,
                 from include/linux/gfp.h:4,
                 from include/linux/slab.h:12,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:22:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/page.h:116: error: #error Unknown user operations model
In file included from /usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/page.h:202,
                 from include/linux/mmzone.h:20,
                 from include/linux/gfp.h:4,
                 from include/linux/slab.h:12,
                 from /home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.c:22:
/usr/src/linux-headers-2.6.35-22-generic/arch/arm/include/asm/memory.h:18: fatal error: mach/memory.h: No such file or directory
compilation terminated.
make[2]: *** [/home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626/fjveincam.o] Error 1
make[1]: *** [_module_/home/lubor/Desktop/driver_linux/PssdLinux-ARM-130626] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.35-22-generic'
make: *** [all] Error 2
root@ubuntu:~/Desktop/driver_linux/PssdLinux-ARM-130626#

论坛徽章:
0
7 [报告]
发表于 2014-03-08 22:47 |只看该作者
不知道是不是驱动本身有问题。请帮我看看。谢谢回复 5# archer239915


   

论坛徽章:
1
水瓶座
日期:2013-10-14 10:55:54
8 [报告]
发表于 2014-03-08 23:34 |只看该作者
请问你是编译在ubuntu上运行的驱动模块还是在ARM开发板上运行的驱动模块?
makefile可以看一下吗?
qq说吧, 1152840423

论坛徽章:
0
9 [报告]
发表于 2014-03-08 23:47 |只看该作者
是在开发板上面用的驱动程序,已经加了。O(∩_∩)O谢谢回复 8# archer239915


   

论坛徽章:
0
10 [报告]
发表于 2014-03-11 00:53 |只看该作者
重新安装咯。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP