37

帖子

0

TA的资源

一粒金砂(中级)

21
 
本帖最后由 wowo8688 于 2015-4-8 09:00 编辑

求救
我想使用help2416的uboot的nfs启动文件系统作qt实验,nfs一直启动不了,错误如下,请教是版主是如何实现的?

smc911x smc911x: eth0: link up, 100Mbps, full-duplex, lpa 0xC5E1
IP-Config: Guessing netmask 255.255.255.0
IP-Config: Complete:
     device=eth0, addr=192.168.0.20, mask=255.255.255.0, gw=255.255.255.255,
     host=192.168.0.20, domain=, nis-domain=(none),
     bootserver=255.255.255.255, rootserver=192.168.0.100, rootpath=
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "nfs" or unknown-block(2,0)
Please append a correct "root=" boot option; here are the available partitions:
1f00             256 mtdblock0  (driver?)
1f01            3840 mtdblock1  (driver?)
1f02          258048 mtdblock2  (driver?)
b300         7782400 mmcblk0  driver: mmcblk
  b301         7778304 mmcblk0p1 00000000-0000-0000-0000-000000000000
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
[] (unwind_backtrace+0x0/0xf0) from [] (panic+0x54/0x190)
[] (panic+0x54/0x190) from [] (mount_block_root+0x1c8/0x208)
[] (mount_block_root+0x1c8/0x208) from [] (mount_root+0xd0/0xf0)
[] (mount_root+0xd0/0xf0) from [] (prepare_namespace+0x15c/0x1b4)
[] (prepare_namespace+0x15c/0x1b4) from [] (kernel_init+0xf4/0x12c)
[] (kernel_init+0xf4/0x12c) from [] (kernel_thread_exit+0x0/0x8)
evbug: Event. Dev: input1, Type: 3, Code: 0, Value: 2865
evbug: Event. Dev: input1, Type: 3, Code: 1, Value: 2717
evbug: Event. Dev: input1, Type: 1, Code: 330, Value: 1


回复

37

帖子

0

TA的资源

一粒金砂(中级)

22
 
本帖最后由 wowo8688 于 2015-4-7 21:23 编辑

板子ping主机ubuntu是通的,内核是用光盘zImage.70对吧?!nfs文件系统是用光盘中root-qtopia.tar.xz解压在目录下/opt/target/设置好了。


 
 

回复

37

帖子

0

TA的资源

一粒金砂(中级)

23
 
问题解决了,内核没问题,文件系统没问题,uboot下命令引导参数没问题
定位问题,vi /etc/exports 下新添加的 /opt *(rw,sync)需要重新启动nfs生效否则就提示上述异常错误。
 
 
 

回复

37

帖子

0

TA的资源

一粒金砂(中级)

24
 
有个疑问,help2416的uboot的nfs命令怎么用,nfsroot目录已有C0A80014.img是内核zImage.70重命名后,但启动出现如下错误

Helper2416 # nfs
smc911x: initializing
smc911x: detected LAN9220 controller
smc911x: phy initialized
smc911x: MAC 00:40:5c:26:0a:5b
*** Warning: no boot file name; using '/nfsroot/C0A80014.img'
File transfer via NFS from server 192.168.0.100; our IP address is 192.168.0.20
Filename '/nfsroot/C0A80014.img'.
Load address: 0x30000000
Loading: *** ERROR: Cannot mount
 
 
 

回复

554

帖子

0

TA的资源

版主

25
 
正确的nfs命令是:nfs [ramaddr] [remote path]
比如:nfs c3000000 192.168.0.100:/opt/target/zImage
 
个人签名My dreams will go on...
http://www.jyxtec.com
 
 

回复

37

帖子

0

TA的资源

一粒金砂(中级)

26
 
刚刚测试了
Helper2416 # nfs 0x30000800 $serverip:/home/zImage
smc911x: initializing
smc911x: detected LAN9220 controller
smc911x: phy initialized
smc911x: MAC 00:40:5c:26:0a:5b
File transfer via NFS from server 192.168.0.100; our IP address is 192.168.0.20
Filename '/home/zImage'.
Load address: 0x30000800
Loading: *** ERROR: Cannot mount
*** ERROR: Cannot umount
Helper2416 #
 
 
 

回复

37

帖子

0

TA的资源

一粒金砂(中级)

27
 
本帖最后由 wowo8688 于 2015-4-8 10:06 编辑

Helper2416 # nfs c3000000 192.168.0.100:/home/zImage      
smc911x: initializing
smc911x: detected LAN9220 controller
smc911x: phy initialized
smc911x: MAC 00:40:5c:26:0a:5b
File transfer via NFS from server 192.168.0.100; our IP address is 192.168.0.20
Filename '/home/zImage'.
Load address: 0xc3000000
Loading: *** ERROR: File lookup fail
*** ERROR: Cannot umount
Helper2416 #

这是什么问题呢?是内核有问题还是uboot参数问题还是nfs服务器问题,如何下手?
nfs文件系统都可正常启动应该可排除内核有问题和nfs服务器问题吧?!
 
 
 

回复

37

帖子

0

TA的资源

一粒金砂(中级)

28
 
本帖最后由 wowo8688 于 2015-4-8 10:26 编辑

解决了,原来是目录下没有zImage文件导致,zImage放在、/opt目录下,重新拷贝到/home目录下ok
Helper2416 # nfs 0x30008000 192.168.0.100:/home/zImage
smc911x: initializing
smc911x: detected LAN9220 controller
smc911x: phy initialized
smc911x: MAC 00:40:5c:26:0a:5b
File transfer via NFS from server 192.168.0.100; our IP address is 192.168.0.20
Filename '/home/zImage'.
Load address: 0x30008000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ###################################################*** ERROR: Cannot umount
Helper2416 #
 
 
 

回复

37

帖子

0

TA的资源

一粒金砂(中级)

29
 
ERROR: Cannot umount问题也找到解决办法,给后来人参考,但尚不知道到原因,也请高手明示
        在主机的/etc/hosts文件中加入
        在主机的/etc/hosts文件中增加一行名称解析內容:
        你的开发板ip     nfs目录。
        比如:192.168.0.100  /opt/target

 
 
 

回复

554

帖子

0

TA的资源

版主

30
 
cann't  mount那个有时候是通讯失败,重来一次说不定就好了,我们也偶尔遇到,没有在意
 
个人签名My dreams will go on...
http://www.jyxtec.com
 
 

回复

37

帖子

0

TA的资源

一粒金砂(中级)

31
 
本帖最后由 wowo8688 于 2015-4-15 15:26 编辑

请教版本使用您编译好的qt库出现如下错误是什么原因啊,求解法

编译qt486错误:

关键词libQtCore.so: undefined reference to `inotify_init1@GLIBC_2.9'

root@cjx-virtual-machine:/opt/hmi2# make
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/bin/qmake -o Makefile hmi2.pro
arm-linux-g++ -Wl,-O1 -Wl,-rpath,/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -o hmi2 main.o mainwindow.o win2.o moc_mainwindow.o moc_win2.o qrc_1234567-qrc.o    -L/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -L/opt/tslib/tmp/lib -lts -lQtGui -L/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -lQtNetwork -lQtCore -lpthread
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtCore.so: undefined reference to `inotify_init1@GLIBC_2.9'
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtGui.so: undefined reference to `pipe2@GLIBC_2.9'
collect2: ld returned 1 exit status
make: *** [hmi2] 错误 1
root@cjx-virtual-machine:/opt/hmi2#

网上搜索说是ubuntu的glibc库太老
本人使用自己编译的QtEmbedded-4.8.5-arm版本在同样的ubuntu下编译通过,这是为啥啊

点评

对于PC版本,重新编译一下就行了,对于ARM版本,参考手册上的编译方法是没问题的  详情 回复 发表于 2015-4-15 18:01
 
 
 

回复

554

帖子

0

TA的资源

版主

32
 
wowo8688 发表于 2015-4-15 15:25
请教版本使用您编译好的qt库出现如下错误是什么原因啊,求解法

编译qt486错误:

关键词libQtCore.so: undefined reference to `inotify_init1@GLIBC_2.9'

root@cjx-virtual-machine:/opt/hmi2# make
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/bin/qmake -o Makefile hmi2.pro
arm-linux-g++ -Wl,-O1 -Wl,-rpath,/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -o hmi2 main.o mainwindow.o win2.o moc_mainwindow.o moc_win2.o qrc_1234567-qrc.o    -L/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -L/opt/tslib/tmp/lib -lts -lQtGui -L/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -lQtNetwork -lQtCore -lpthread
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtCore.so: undefined reference to `inotify_init1@GLIBC_2.9'
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtGui.so: undefined reference to `pipe2@GLIBC_2.9'
collect2: ld returned 1 exit status
make: *** [hmi2] 错误 1
root@cjx-virtual-machine:/opt/hmi2#

网上搜索说是ubuntu的glibc库太老
本人使用自己编译的QtEmbedded-4.8.5-arm版本在同样的ubuntu下编译通过,这是为啥啊

对于PC版本,重新编译一下就行了,对于ARM版本,参考手册上的编译方法是没问题的
 
个人签名My dreams will go on...
http://www.jyxtec.com
 
 

回复

37

帖子

0

TA的资源

一粒金砂(中级)

33
 
本帖最后由 wowo8688 于 2015-4-21 13:38 编辑

问题解决了,谢谢大家
原因,arm编译器版本太老

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
使用4.3.3版本arm编译器结合qmake4.8.6编译qt程序不通过
root@cjx-virtual-machine:/opt/xxx/Led_control# arm-linux-gcc -v
Using built-in specs.
Target: arm-none-linux-gnueabi
Configured with: /scratch/maxim/arm-lite/src-4.3-arm-none-linux-gnueabi-lite/gcc-4.3/configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=arm-none-linux-gnueabi --enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch --with-gnu-as --with-gnu-ld --with-specs='%{funwind-tables|fno-unwind-tables|mabi=*|ffreestanding|nostdlib:;:-funwind-tables}' --enable-languages=c,c++ --enable-shared --enable-symvers=gnu --enable-__cxa_atexit --with-pkgversion='Sourcery G++ Lite 2009q1-176' --with-bugurl=https://support.codesourcery.com/GNUToolchain/ --disable-nls --prefix=/opt/codesourcery --with-sysroot=/opt/codesourcery/arm-none-linux-gnueabi/libc --with-build-sysroot=/scratch/maxim/arm-lite/install-4.3-arm-none-linux-gnueabi-lite/arm-none-linux-gnueabi/libc --with-gmp=/scratch/maxim/arm-lite/obj-4.3-arm-none-linux-gnueabi-lite/host-libs-2009q1-176-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --with-mpfr=/scratch/maxim/arm-lite/obj-4.3-arm-none-linux-gnueabi-lite/host-libs-2009q1-176-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --disable-libgomp --enable-poison-system-directories --with-build-time-tools=/scratch/maxim/arm-lite/install-4.3-arm-none-linux-gnueabi-lite/arm-none-linux-gnueabi/bin --with-build-time-tools=/scratch/maxim/arm-lite/install-4.3-arm-none-linux-gnueabi-lite/arm-none-linux-gnueabi/bin
Thread model: posix
gcc version 4.3.3 (Sourcery G++ Lite 2009q1-176)
root@cjx-virtual-machine:/opt/xxx/Led_control#

root@cjx-virtual-machine:/opt/xxx/Led_control# make
...
arm-linux-g++ -Wl,-O1 -Wl,-rpath,/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -o Led_control main.o widget.o moc_widget.o qrc_led.o    -L/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -lQtGui -L/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -lQtNetwork -lQtCore -lpthread
/mnt/EmbedSky/4.3.3/bin/../lib/gcc/arm-none-linux-gnueabi/4.3.3/../../../../arm-none-linux-gnueabi/bin/ld: warning: libts-1.0.so.0, needed by /usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtGui.so, not found (try using -rpath or -rpath-link)
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtCore.so: undefined reference to `inotify_init1@GLIBC_2.9'
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtGui.so: undefined reference to `pipe2@GLIBC_2.9'
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtGui.so: undefined reference to `ts_read_raw'
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtGui.so: undefined reference to `ts_open'
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtGui.so: undefined reference to `ts_fd'
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtGui.so: undefined reference to `ts_config'
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtGui.so: undefined reference to `ts_close'
/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib/libQtGui.so: undefined reference to `ts_read'
collect2: ld returned 1 exit status
make: *** [Led_control] 错误 1
root@cjx-virtual-machine:/opt/xxx/Led_control#

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

使用4.4.6版本arm编译器结合qmake4.8.6编译qt程序通过
root@cjx-virtual-machine:/opt/xxx/Led_control# arm-linux-gcc -v
Using built-in specs.
Target: arm-jyxtec-linux-gnueabi
Configured with: /home/d02cj/arm/crosstool_build/.build/src/gcc-4.4.6/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=arm-jyxtec-linux-gnueabi --prefix=/home/d02cj/x-tools/arm-jyxtec-linux-gnueabi --with-sysroot=/home/d02cj/x-tools/arm-jyxtec-linux-gnueabi/arm-jyxtec-linux-gnueabi/sysroot --enable-languages=c,c++ --disable-multilib --with-arch=armv5te --with-cpu=arm926ej-s --with-tune=arm926ej-s --with-float=soft --with-pkgversion='crosstool-NG 1.13.3' --disable-sjlj-exceptions --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --with-gmp=/home/d02cj/arm/crosstool_build/.build/arm-jyxtec-linux-gnueabi/build/static --with-mpfr=/home/d02cj/arm/crosstool_build/.build/arm-jyxtec-linux-gnueabi/build/static --with-ppl=/home/d02cj/arm/crosstool_build/.build/arm-jyxtec-linux-gnueabi/build/static --with-cloog=/home/d02cj/arm/crosstool_build/.build/arm-jyxtec-linux-gnueabi/build/static --enable-threads=posix --enable-target-optspace --with-local-prefix=/home/d02cj/x-tools/arm-jyxtec-linux-gnueabi/arm-jyxtec-linux-gnueabi/sysroot --disable-nls --enable-c99 --enable-long-long
Thread model: posix
gcc version 4.4.6 (crosstool-NG 1.13.3)
root@cjx-virtual-machine:/opt/xxx/Led_control#

root@cjx-virtual-machine:/opt/xxx/Led_control# make
...
widget.cpp:36: warning: ignoring return value of 'ssize_t write(int, const void*, size_t)', declared with attribute warn_unused_result
widget.cpp: In member function 'void Widget::on_pushButton_2_clicked()':
widget.cpp:53: warning: ignoring return value of 'ssize_t write(int, const void*, size_t)', declared with attribute warn_unused_result
arm-linux-g++ -Wl,-O1 -Wl,-rpath,/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -o Led_control main.o widget.o moc_widget.o qrc_led.o    -L/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -lQtGui -L/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -lQtNetwork -lQtCore -lpthread
root@cjx-virtual-machine:/opt/xxx/Led_control#

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

不知道哪位大神能从我上面列出的arm编译器版本中看出是编译器什么配置缺少还是说arm编译器4.3.3不能太老引起不匹配qmake-4.8.6呢?
但本人自己编译的qmake-4.8.5却和arm编译器4.4.6版可正常匹配使用。看来是arm编译器4.3.3缺少什么配置项?
 
 
 

回复

12

帖子

0

TA的资源

一粒金砂(初级)

34
 
正需要这个,感谢楼主!!!
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

35
 
顶一下,谢谢分享
 
 
 

回复

324

帖子

2

TA的资源

纯净的硅(初级)

36
 
,谢谢分享!
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

37
 
楼主你好,你视频中提到的sysroot的设置我还不是很明白,sysroot设置为根文件系统指的是什么目录?谢谢
 
 
 

回复

6105

帖子

4

TA的资源

版主

38
 
谢谢分享,谢谢!!!
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表