buildroot编译嵌入式arm开发环境使其支持usb摄像头,并用qemu虚拟运行
-
- 帖子: 6
- 注册时间: 2012-01-04 16:58
buildroot编译嵌入式arm开发环境使其支持usb摄像头,并用qemu虚拟运行
各位大咖,小弟初次接触嵌入式,由于头儿给了安排:自己编译一个linux内核(arm架构的),使其支持usb摄像头,但由于现在手头上并没有相应的实体板子,因此需要将编译出来的系统在qemu中虚拟运行。这活都很长时间了,因此十分的头疼,自己也查了相关的资料,但都没有遇到合适的解决方案,在配置buildroot的时候经常遇到各种各样的错误,因此在论坛里求助,还希望能遇到帮组解决的高手,十分的感激!大家共同进步,谢谢了啊!
- zhw2101024
- 帖子: 1849
- 注册时间: 2009-03-28 16:10
- 系统: Arch debian win7
- 联系:
Re: buildroot编译嵌入式arm开发环境使其支持usb摄像头,并用qemu虚拟运行
qemu用的驱动应该跟实体驱动是一样的,配置内核的时候定制一下USB和Camera相关的配置项应该就可以。
为什么我的问题总是没有人回答?
金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖
金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖
-
- 帖子: 6
- 注册时间: 2012-01-04 16:58
Re: buildroot编译嵌入式arm开发环境使其支持usb摄像头,并用qemu虚拟运行
你好啊,我在配置buildroot的时候应该是配置了相关选项的,我把我的具体配置贴上来,麻烦你帮我看下吧,行么?谢谢了啊zhw2101024 写了:qemu用的驱动应该跟实体驱动是一样的,配置内核的时候定制一下USB和Camera相关的配置项应该就可以。
我的buildroot(最新版2014.05)配置如下:
Target options ->Target Architecture:ARM(big endian)
->Target Architecture Variant(arm926t)
->Target ABI(EABI)
->Floating point strategy(Soft float)
->ARM instruction set(ARM)
Toolchain ->Enable large file(files>2GB) support
->Enable WCHAR support
GCC compiler Version(gcc 4.7.x)
->Enable C++ support
Kernel ->Linux Kernel
->Kernel version(Same as toolchain kernel headers)
->Defconfig name(versatile)
Target packages ->Development tools
->binutils
->libtool
->make
->pkgconf
->Graphic libraries and applications
->X.org X Window System
->Hardware handling
->media-ctl
->usbutils
->Libraries
->Compression and decompression
->zlib
->Graphics
->jpeg support
->libpng
->Hardware handling
->libusb
->libusb-compat
->libv4l
->v4l2-compliance
->v4l2-ctl
->v4l2-dbg
Filesystem packages ->cpio the root filesystem(for use as an initial RAM filesystem)
->ext2/3/4 root filesystem
->tar the root filesystem
->Compression method(gzip)
也成功编译完成了,其余的都是默认选项。
output目录下有以下文件 :rootfs.cpio,rootfs.ext2,rootfs.tar,rootfs.tar.gz,uImage
然后试着运行qemu,命令如下:
qemu-system-arm -M versatilepb -m 128M -kernel uImage -initrd rootfs.tar.gz -append "root=/dev/ram"
则出错。错误代码如下:
No filesystem could mount root,tried: ext2 cramfs minix romfs
Kernel panic - not syncing: VFS; Unable to mount root fs on unknown-block(1,0)
请问这是什么原因导致的呢?谢谢帮忙了啊?
-
- 帖子: 6
- 注册时间: 2012-01-04 16:58
Re: buildroot编译嵌入式arm开发环境使其支持usb摄像头,并用qemu虚拟运行
另外附上qemu运行结果图zhw2101024 写了:qemu用的驱动应该跟实体驱动是一样的,配置内核的时候定制一下USB和Camera相关的配置项应该就可以。
能帮我分析下这是什么原因么?是不是还得用make linux-menuconfig来重新编译根文件系统,如果是的话,又如何制作根文件系统呢?
- zhw2101024
- 帖子: 1849
- 注册时间: 2009-03-28 16:10
- 系统: Arch debian win7
- 联系:
Re: buildroot编译嵌入式arm开发环境使其支持usb摄像头,并用qemu虚拟运行
虽然编译过几次内核,但……都是x86到x86,交叉编译没搞过
编译配置最好是把源码根目录的.config文件作为附件上传,那样的话一目了然。你贴的这个不全面,也不好看懂。
编译配置最好是把源码根目录的.config文件作为附件上传,那样的话一目了然。你贴的这个不全面,也不好看懂。
为什么我的问题总是没有人回答?
金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖
金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖
-
- 帖子: 6
- 注册时间: 2012-01-04 16:58
Re: buildroot编译嵌入式arm开发环境使其支持usb摄像头,并用qemu虚拟运行
我把配置文件上传上来,麻烦你帮我分析下啊(可以试着用notepad++打开,不会产生乱码的),谢谢了!zhw2101024 写了:虽然编译过几次内核,但……都是x86到x86,交叉编译没搞过
编译配置最好是把源码根目录的.config文件作为附件上传,那样的话一目了然。你贴的这个不全面,也不好看懂。
- 附件
-
- config.txt
- (50.13 KiB) 已下载 134 次
- zhw2101024
- 帖子: 1849
- 注册时间: 2009-03-28 16:10
- 系统: Arch debian win7
- 联系:
Re: buildroot编译嵌入式arm开发环境使其支持usb摄像头,并用qemu虚拟运行
我的错,qemu属于半虚拟化,需要virtio驱动的。但是你那个配置文件里面完全没有相关的选项,是从哪来的内核啊。
你那边还有其他同事吗?他们也用qemu运行arm内核?
你那边还有其他同事吗?他们也用qemu运行arm内核?
为什么我的问题总是没有人回答?
金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖
金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖
-
- 帖子: 6
- 注册时间: 2012-01-04 16:58
Re: buildroot编译嵌入式arm开发环境使其支持usb摄像头,并用qemu虚拟运行
是直接在buildroot中选择的,kernel选项,然后选择linux内核就完事了!我们这边没有人在用这个,只有我一个人做,烦躁啊!zhw2101024 写了:我的错,qemu属于半虚拟化,需要virtio驱动的。但是你那个配置文件里面完全没有相关的选项,是从哪来的内核啊。
你那边还有其他同事吗?他们也用qemu运行arm内核?
那现在应该怎么修改呢?修改buildroot配置还是再次进行make linux-menuconfig的相关配置后重新make buildroot亦或者如何修改呢?
-
- 帖子: 6
- 注册时间: 2012-01-04 16:58
Re: buildroot编译嵌入式arm开发环境使其支持usb摄像头,并用qemu虚拟运行
配置文件中kernel选项下面的BR2_LINUX_KERNEL_VERSION="3.14.4"是指的什么呢?
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
# BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG is not set
BR2_LINUX_KERNEL_DEFCONFIG="versatile"
还有这两个又是什么意思呢?求教啊
我之前看的资料中说是因为我没有真正的实体板,所以才选择versatile的,是不是这样理解的呢?
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
# BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG is not set
BR2_LINUX_KERNEL_DEFCONFIG="versatile"
还有这两个又是什么意思呢?求教啊
我之前看的资料中说是因为我没有真正的实体板,所以才选择versatile的,是不是这样理解的呢?
- zhw2101024
- 帖子: 1849
- 注册时间: 2009-03-28 16:10
- 系统: Arch debian win7
- 联系:
Re: buildroot编译嵌入式arm开发环境使其支持usb摄像头,并用qemu虚拟运行
我都是make menuconfig,然后遇到不理解的选项就按?看帮助……
为什么我的问题总是没有人回答?
金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖
金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖