把windows下的Qt程序移植到arm板上,在ubuntu下编译的时候,res.qrc文件不能生成qrc_res.o文件,搞了半天原来是qrc文件里有的图片路径含有中文,把中文去掉就OK了!
后来发现还是不行,修改qrc文件保存的时候还qt还会崩溃, 总结原因是我在添加资源文件的时候qt creator 崩溃造成的问题,把新添加的资源文件删除,再重新添加一次就好了!或者qrc文件在打开状态,把这个文件关闭了再编译.
而造成Qt崩溃的原因则是单个qrc文件里放了太多的资源文件,因此多添加几个qrc文件,免得qt 频频崩溃.之前资源文件可以说是乱放的,现在也借此机会把资源都放放好.顺便总结一下qrc文件的使用.在pro文件下的Resources文件夹里放入qrc文件,再新建几个要用到的目录,比如qss,image.
终于找到原因了,原来是内存不足.
18:12:18: Starting: "/usr/bin/make" -w
make: Entering directory `/home/ls/nfs/MyApp1.3.2.14-linux-1.16/NVR3000E_linux_1-build-desktop-Qt_4_8_4__qt___2__Debug'
/opt/qt/bin/rcc -name res ../NVR3000E/res.qrc -o qrc_res.cpp
/opt/hisi-linux-nptl/arm-hisiv100-linux/target/bin/arm-hisiv100nptl-linux-g++ -c -pipe -g -Wall -W -D_REENTRANT -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/opt/qt/mkspecs/qws/linux-arm-g++ -I../NVR3000E -I/opt/qt/include/QtCore -I/opt/qt/include/QtNetwork -I/opt/qt/include/QtGui -I/opt/qt/include/QtXml -I/opt/qt/include -I../NVR3000E -I/home/ls/nfs/MyApp1.3.2.14-linux-1.16/NVR3000E/../../EXE/Debug -I. -I. -I. -o qrc_res.o qrc_res.cpp
virtual memory exhausted: Cannot allocate memory
make: *** [qrc_res.o] Error 1
make: Leaving directory `/home/ls/nfs/MyApp1.3.2.14-linux-1.16/NVR3000E_linux_1-build-desktop-Qt_4_8_4__qt___2__Debug'
18:12:24: The process "/usr/bin/make" exited with code 2.
Error while building project NVR3000E_linux_1.3.2.14 (tar