求助:qvfb must be compiled with the Qt for X11 package??

时间:2022-07-22 17:42:44
大家好,希望能有高手帮助我看看这个问题,谢谢 ,我是在ubuntu下安装的qt4.7.2
具体的安装步骤如下:
解压qt-everywhere-opensource-src-4.7.2.tar.gz源码包到/home/(user)/QT。并进入该目录:
#./configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb
# gmake
# gmake install
安装过程比较长,没有碰到过错误。安装完成后在/usr/local/Trolltech目录下会产生一个QtE-4.7.2-x86文件夹。
# cd /home/qt-everywhere-opensource-src-4.7.2/tools/qvfb
    复制/home/qt-everywhere-opensource-src-4.7.2/tools/shared/deviceskin目录下的deviceskin.cpp和deviceskin.h文件至/home/qt-everywhere-opensource-src-4.7.2/tools/qvfb目录下,修改该目录下Makefile文件中LIBS = $(SUBLIBS)  -L/home/qt-everywhere-opensource-src-4.7.2/lib -lQtGui -L/home/qt-everywhere-opensource-src-4.7.2/lib -lQtNetwork -lQtCore –lpthread为:
LIBS = $(SUBLIBS)  -L/home/qt-everywhere-opensource-src-4.7.2/lib -lQtGui -lXtst -L/home/qt-everywhere-opensource-src-4.7.2/lib -lQtNetwork -lQtCore –lpthread
然后执行:
#/home/qt-everywhere-opensource-src-4.7.2/bin/qmake –project
#/home/qt-everywhere-opensource-src-4.7.2/bin/qmake
#make
好了,问题就出现在这个make上了,应该是make后会生成qvfb的可执行文件,可是,我一make,它就报qvfb must be compiled with the Qt for X11 package这个错误,大家有碰到过这个问题吗?

11 个解决方案

#1


好像 qvfb 必须配置成桌面版编译吧

#2


我的配置应该就是桌面版编译的

#3


你加了 -embedded x86 

#4


hi, 我的配置是这样的。
这个是编译qt-embedded版本
configure -debug -embedded -qvfb -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb -no-webkit -prefix /usr/local/Trolltech/Qt-embedded-qvfb-4.8.1 -confirm-license


然后,你需要去下载那个qvfb的工具。直接用sudo apt-get intall就可以了。


#5


引用 3 楼 zhxianbin 的回复:
你加了 -embedded x86 



引用 4 楼 allencui0313 的回复:
hi, 我的配置是这样的。
这个是编译qt-embedded版本
configure -debug -embedded -qvfb -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb -no-webkit -prefix /usr/local/Trolltech/Qt-embedded-qvfb-4.8.1 -confirm-license
然后,你需要去下载那个qvfb的工具。直接用sudo apt-get intall就可以了。


hi,我想我的问题初步得到解决了,装了我两三天,呵呵,非常感谢两位的提点
是这样的,我原本是按照下面这篇博客来安装环境的http://blog.chinaunix.net/uid-25652733-id-291521.html,他开发板的平台和我一样,dm365.写的也挺详细,所以我就按照他的步骤一步一步的做。
我用的是实验室的服务器,本身就是ubuntu系统,下载的qt版本是qt-everywhere-opensource-src-4.7.2,原博客作者的意图应该是先装一个桌面版QT4.7.2-X86,然后再装一个arm版的QtE-4.7.2-arm.但是按照他在安装QT4.7.2-x86时的configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb来做,make,make install后在/usr/local/Trolltech/下生成的是Qt-Embedded-4.7.2,然后再编译qvfb,就会报qvfb must be compiled with the Qt for X11 package这个错误,而且creator里写好的程序用这个库也运行不起来,而按他的意思写好的程序又要在qvfb下运行,我qvfb又没法编译出来,对这些概念有点不清楚,很郁闷。后来zhxianbin提醒了我,我直接改configure -qvfb 再make 再make install后,在/usr/local/Trolltech/下生成Qt-4.7.2,然后creator里的helloworld程序调用这个库来编译运行就可以直接弹出helloworld的窗口。而在新的configure以后,安装文件下的qvfb也可以编译成功了,然后想用qvfb的话,就按照原先configure生成的Qt-Embedded-4.7.2的库里的qmake来,先打开qvfb,再run,qvfb里就也会有helloworld的窗口了。

我的想法是这样的,首先,qvfb这个好像在qt配置成embedded下是无法编译的,要配置成普通的linux版本才能生成,而按qt-embedded库编译后的程序又得在qvfb下才能运行。原作者可能没说清楚这些

不知道我的想法对不对,下一步要移植qt到dm365平台下,两位有了解怎么做吗?

#6


qvfb 是一个桌面应用程序,所以不应该加入  -embedded 选项;
 -embedded x86 是为了在桌面模拟嵌入式环境,结果通过 qvfb显示;
编译 dm365 ,加入 -embedded arm 选项。

#7


哦~搞清楚之前要理解2个概念
1 Qt linux 这个是基于x11的。
2 Qt embedded 这个是基于framebuffer的,不依赖于x11.

qvfb是一个x11平台的模拟器,用来模拟qt embedded的工作流程。

所以qvfb必须用x11平台的qt版本来编译。

同时你还需要一个qt-embedded版本.

#8


引用 5 楼 donganwu 的回复:
Quote: 引用 3 楼 zhxianbin 的回复:

你加了 -embedded x86 



引用 4 楼 allencui0313 的回复:
hi, 我的配置是这样的。
这个是编译qt-embedded版本
configure -debug -embedded -qvfb -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb -no-webkit -prefix /usr/local/Trolltech/Qt-embedded-qvfb-4.8.1 -confirm-license
然后,你需要去下载那个qvfb的工具。直接用sudo apt-get intall就可以了。


hi,我想我的问题初步得到解决了,装了我两三天,呵呵,非常感谢两位的提点
是这样的,我原本是按照下面这篇博客来安装环境的http://blog.chinaunix.net/uid-25652733-id-291521.html,他开发板的平台和我一样,dm365.写的也挺详细,所以我就按照他的步骤一步一步的做。
我用的是实验室的服务器,本身就是ubuntu系统,下载的qt版本是qt-everywhere-opensource-src-4.7.2,原博客作者的意图应该是先装一个桌面版QT4.7.2-X86,然后再装一个arm版的QtE-4.7.2-arm.但是按照他在安装QT4.7.2-x86时的configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb来做,make,make install后在/usr/local/Trolltech/下生成的是Qt-Embedded-4.7.2,然后再编译qvfb,就会报qvfb must be compiled with the Qt for X11 package这个错误,而且creator里写好的程序用这个库也运行不起来,而按他的意思写好的程序又要在qvfb下运行,我qvfb又没法编译出来,对这些概念有点不清楚,很郁闷。后来zhxianbin提醒了我,我直接改configure -qvfb 再make 再make install后,在/usr/local/Trolltech/下生成Qt-4.7.2,然后creator里的helloworld程序调用这个库来编译运行就可以直接弹出helloworld的窗口。而在新的configure以后,安装文件下的qvfb也可以编译成功了,然后想用qvfb的话,就按照原先configure生成的Qt-Embedded-4.7.2的库里的qmake来,先打开qvfb,再run,qvfb里就也会有helloworld的窗口了。

我的想法是这样的,首先,qvfb这个好像在qt配置成embedded下是无法编译的,要配置成普通的linux版本才能生成,而按qt-embedded库编译后的程序又得在qvfb下才能运行。原作者可能没说清楚这些

不知道我的想法对不对,下一步要移植qt到dm365平台下,两位有了解怎么做吗?

如果你是按照你给的链接来做的话,交叉编译器什么的你应该都配置好了,编译出来的版本应该是arm版本的吧,你把编译出来的库还有相关的文件移植到开发板即可

#9


引用 7 楼 allencui0313 的回复:
哦~搞清楚之前要理解2个概念
1 Qt linux 这个是基于x11的。
2 Qt embedded 这个是基于framebuffer的,不依赖于x11.

qvfb是一个x11平台的模拟器,用来模拟qt embedded的工作流程。

所以qvfb必须用x11平台的qt版本来编译。

同时你还需要一个qt-embedded版本.

嗯……你这样一说,概念就比较清楚了

#10


引用 8 楼 q245879 的回复:
Quote: 引用 5 楼 donganwu 的回复:

Quote: 引用 3 楼 zhxianbin 的回复:

你加了 -embedded x86 



引用 4 楼 allencui0313 的回复:
hi, 我的配置是这样的。
这个是编译qt-embedded版本
configure -debug -embedded -qvfb -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb -no-webkit -prefix /usr/local/Trolltech/Qt-embedded-qvfb-4.8.1 -confirm-license
然后,你需要去下载那个qvfb的工具。直接用sudo apt-get intall就可以了。


hi,我想我的问题初步得到解决了,装了我两三天,呵呵,非常感谢两位的提点
是这样的,我原本是按照下面这篇博客来安装环境的http://blog.chinaunix.net/uid-25652733-id-291521.html,他开发板的平台和我一样,dm365.写的也挺详细,所以我就按照他的步骤一步一步的做。
我用的是实验室的服务器,本身就是ubuntu系统,下载的qt版本是qt-everywhere-opensource-src-4.7.2,原博客作者的意图应该是先装一个桌面版QT4.7.2-X86,然后再装一个arm版的QtE-4.7.2-arm.但是按照他在安装QT4.7.2-x86时的configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb来做,make,make install后在/usr/local/Trolltech/下生成的是Qt-Embedded-4.7.2,然后再编译qvfb,就会报qvfb must be compiled with the Qt for X11 package这个错误,而且creator里写好的程序用这个库也运行不起来,而按他的意思写好的程序又要在qvfb下运行,我qvfb又没法编译出来,对这些概念有点不清楚,很郁闷。后来zhxianbin提醒了我,我直接改configure -qvfb 再make 再make install后,在/usr/local/Trolltech/下生成Qt-4.7.2,然后creator里的helloworld程序调用这个库来编译运行就可以直接弹出helloworld的窗口。而在新的configure以后,安装文件下的qvfb也可以编译成功了,然后想用qvfb的话,就按照原先configure生成的Qt-Embedded-4.7.2的库里的qmake来,先打开qvfb,再run,qvfb里就也会有helloworld的窗口了。

我的想法是这样的,首先,qvfb这个好像在qt配置成embedded下是无法编译的,要配置成普通的linux版本才能生成,而按qt-embedded库编译后的程序又得在qvfb下才能运行。原作者可能没说清楚这些

不知道我的想法对不对,下一步要移植qt到dm365平台下,两位有了解怎么做吗?

如果你是按照你给的链接来做的话,交叉编译器什么的你应该都配置好了,编译出来的版本应该是arm版本的吧,你把编译出来的库还有相关的文件移植到开发板即可


hi,我是按照那个链接来做的,交叉编译,该移植的库和文件也都做了。出现两个问题,一是我在做这个链接#ln –s /dev/fb/0 /dev/fb0的时候,报错/dev/fb0这个设备不存在,但/dev目录下fb0和fb/0都是存在的。另外我直接跑helloworld测试程序,LCD没有反应。对了,我想问下Qt-extended是什么,我是不是还要移植这个到我的开发板上呢?

#11


引用 10 楼 donganwu 的回复:
Quote: 引用 8 楼 q245879 的回复:

Quote: 引用 5 楼 donganwu 的回复:

Quote: 引用 3 楼 zhxianbin 的回复:

你加了 -embedded x86 



引用 4 楼 allencui0313 的回复:
hi, 我的配置是这样的。
这个是编译qt-embedded版本
configure -debug -embedded -qvfb -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb -no-webkit -prefix /usr/local/Trolltech/Qt-embedded-qvfb-4.8.1 -confirm-license
然后,你需要去下载那个qvfb的工具。直接用sudo apt-get intall就可以了。


hi,我想我的问题初步得到解决了,装了我两三天,呵呵,非常感谢两位的提点
是这样的,我原本是按照下面这篇博客来安装环境的http://blog.chinaunix.net/uid-25652733-id-291521.html,他开发板的平台和我一样,dm365.写的也挺详细,所以我就按照他的步骤一步一步的做。
我用的是实验室的服务器,本身就是ubuntu系统,下载的qt版本是qt-everywhere-opensource-src-4.7.2,原博客作者的意图应该是先装一个桌面版QT4.7.2-X86,然后再装一个arm版的QtE-4.7.2-arm.但是按照他在安装QT4.7.2-x86时的configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb来做,make,make install后在/usr/local/Trolltech/下生成的是Qt-Embedded-4.7.2,然后再编译qvfb,就会报qvfb must be compiled with the Qt for X11 package这个错误,而且creator里写好的程序用这个库也运行不起来,而按他的意思写好的程序又要在qvfb下运行,我qvfb又没法编译出来,对这些概念有点不清楚,很郁闷。后来zhxianbin提醒了我,我直接改configure -qvfb 再make 再make install后,在/usr/local/Trolltech/下生成Qt-4.7.2,然后creator里的helloworld程序调用这个库来编译运行就可以直接弹出helloworld的窗口。而在新的configure以后,安装文件下的qvfb也可以编译成功了,然后想用qvfb的话,就按照原先configure生成的Qt-Embedded-4.7.2的库里的qmake来,先打开qvfb,再run,qvfb里就也会有helloworld的窗口了。

我的想法是这样的,首先,qvfb这个好像在qt配置成embedded下是无法编译的,要配置成普通的linux版本才能生成,而按qt-embedded库编译后的程序又得在qvfb下才能运行。原作者可能没说清楚这些

不知道我的想法对不对,下一步要移植qt到dm365平台下,两位有了解怎么做吗?

如果你是按照你给的链接来做的话,交叉编译器什么的你应该都配置好了,编译出来的版本应该是arm版本的吧,你把编译出来的库还有相关的文件移植到开发板即可


hi,我是按照那个链接来做的,交叉编译,该移植的库和文件也都做了。出现两个问题,一是我在做这个链接#ln –s /dev/fb/0 /dev/fb0的时候,报错/dev/fb0这个设备不存在,但/dev目录下fb0和fb/0都是存在的。另外我直接跑helloworld测试程序,LCD没有反应。对了,我想问下Qt-extended是什么,我是不是还要移植这个到我的开发板上呢?

/dev/fb0好像也是一个链接吧,你查看一下。
你运行helloworld没看到效果应该是framebuffer没有被调用,所以没有显示输出。

#1


好像 qvfb 必须配置成桌面版编译吧

#2


我的配置应该就是桌面版编译的

#3


你加了 -embedded x86 

#4


hi, 我的配置是这样的。
这个是编译qt-embedded版本
configure -debug -embedded -qvfb -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb -no-webkit -prefix /usr/local/Trolltech/Qt-embedded-qvfb-4.8.1 -confirm-license


然后,你需要去下载那个qvfb的工具。直接用sudo apt-get intall就可以了。


#5


引用 3 楼 zhxianbin 的回复:
你加了 -embedded x86 



引用 4 楼 allencui0313 的回复:
hi, 我的配置是这样的。
这个是编译qt-embedded版本
configure -debug -embedded -qvfb -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb -no-webkit -prefix /usr/local/Trolltech/Qt-embedded-qvfb-4.8.1 -confirm-license
然后,你需要去下载那个qvfb的工具。直接用sudo apt-get intall就可以了。


hi,我想我的问题初步得到解决了,装了我两三天,呵呵,非常感谢两位的提点
是这样的,我原本是按照下面这篇博客来安装环境的http://blog.chinaunix.net/uid-25652733-id-291521.html,他开发板的平台和我一样,dm365.写的也挺详细,所以我就按照他的步骤一步一步的做。
我用的是实验室的服务器,本身就是ubuntu系统,下载的qt版本是qt-everywhere-opensource-src-4.7.2,原博客作者的意图应该是先装一个桌面版QT4.7.2-X86,然后再装一个arm版的QtE-4.7.2-arm.但是按照他在安装QT4.7.2-x86时的configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb来做,make,make install后在/usr/local/Trolltech/下生成的是Qt-Embedded-4.7.2,然后再编译qvfb,就会报qvfb must be compiled with the Qt for X11 package这个错误,而且creator里写好的程序用这个库也运行不起来,而按他的意思写好的程序又要在qvfb下运行,我qvfb又没法编译出来,对这些概念有点不清楚,很郁闷。后来zhxianbin提醒了我,我直接改configure -qvfb 再make 再make install后,在/usr/local/Trolltech/下生成Qt-4.7.2,然后creator里的helloworld程序调用这个库来编译运行就可以直接弹出helloworld的窗口。而在新的configure以后,安装文件下的qvfb也可以编译成功了,然后想用qvfb的话,就按照原先configure生成的Qt-Embedded-4.7.2的库里的qmake来,先打开qvfb,再run,qvfb里就也会有helloworld的窗口了。

我的想法是这样的,首先,qvfb这个好像在qt配置成embedded下是无法编译的,要配置成普通的linux版本才能生成,而按qt-embedded库编译后的程序又得在qvfb下才能运行。原作者可能没说清楚这些

不知道我的想法对不对,下一步要移植qt到dm365平台下,两位有了解怎么做吗?

#6


qvfb 是一个桌面应用程序,所以不应该加入  -embedded 选项;
 -embedded x86 是为了在桌面模拟嵌入式环境,结果通过 qvfb显示;
编译 dm365 ,加入 -embedded arm 选项。

#7


哦~搞清楚之前要理解2个概念
1 Qt linux 这个是基于x11的。
2 Qt embedded 这个是基于framebuffer的,不依赖于x11.

qvfb是一个x11平台的模拟器,用来模拟qt embedded的工作流程。

所以qvfb必须用x11平台的qt版本来编译。

同时你还需要一个qt-embedded版本.

#8


引用 5 楼 donganwu 的回复:
Quote: 引用 3 楼 zhxianbin 的回复:

你加了 -embedded x86 



引用 4 楼 allencui0313 的回复:
hi, 我的配置是这样的。
这个是编译qt-embedded版本
configure -debug -embedded -qvfb -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb -no-webkit -prefix /usr/local/Trolltech/Qt-embedded-qvfb-4.8.1 -confirm-license
然后,你需要去下载那个qvfb的工具。直接用sudo apt-get intall就可以了。


hi,我想我的问题初步得到解决了,装了我两三天,呵呵,非常感谢两位的提点
是这样的,我原本是按照下面这篇博客来安装环境的http://blog.chinaunix.net/uid-25652733-id-291521.html,他开发板的平台和我一样,dm365.写的也挺详细,所以我就按照他的步骤一步一步的做。
我用的是实验室的服务器,本身就是ubuntu系统,下载的qt版本是qt-everywhere-opensource-src-4.7.2,原博客作者的意图应该是先装一个桌面版QT4.7.2-X86,然后再装一个arm版的QtE-4.7.2-arm.但是按照他在安装QT4.7.2-x86时的configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb来做,make,make install后在/usr/local/Trolltech/下生成的是Qt-Embedded-4.7.2,然后再编译qvfb,就会报qvfb must be compiled with the Qt for X11 package这个错误,而且creator里写好的程序用这个库也运行不起来,而按他的意思写好的程序又要在qvfb下运行,我qvfb又没法编译出来,对这些概念有点不清楚,很郁闷。后来zhxianbin提醒了我,我直接改configure -qvfb 再make 再make install后,在/usr/local/Trolltech/下生成Qt-4.7.2,然后creator里的helloworld程序调用这个库来编译运行就可以直接弹出helloworld的窗口。而在新的configure以后,安装文件下的qvfb也可以编译成功了,然后想用qvfb的话,就按照原先configure生成的Qt-Embedded-4.7.2的库里的qmake来,先打开qvfb,再run,qvfb里就也会有helloworld的窗口了。

我的想法是这样的,首先,qvfb这个好像在qt配置成embedded下是无法编译的,要配置成普通的linux版本才能生成,而按qt-embedded库编译后的程序又得在qvfb下才能运行。原作者可能没说清楚这些

不知道我的想法对不对,下一步要移植qt到dm365平台下,两位有了解怎么做吗?

如果你是按照你给的链接来做的话,交叉编译器什么的你应该都配置好了,编译出来的版本应该是arm版本的吧,你把编译出来的库还有相关的文件移植到开发板即可

#9


引用 7 楼 allencui0313 的回复:
哦~搞清楚之前要理解2个概念
1 Qt linux 这个是基于x11的。
2 Qt embedded 这个是基于framebuffer的,不依赖于x11.

qvfb是一个x11平台的模拟器,用来模拟qt embedded的工作流程。

所以qvfb必须用x11平台的qt版本来编译。

同时你还需要一个qt-embedded版本.

嗯……你这样一说,概念就比较清楚了

#10


引用 8 楼 q245879 的回复:
Quote: 引用 5 楼 donganwu 的回复:

Quote: 引用 3 楼 zhxianbin 的回复:

你加了 -embedded x86 



引用 4 楼 allencui0313 的回复:
hi, 我的配置是这样的。
这个是编译qt-embedded版本
configure -debug -embedded -qvfb -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb -no-webkit -prefix /usr/local/Trolltech/Qt-embedded-qvfb-4.8.1 -confirm-license
然后,你需要去下载那个qvfb的工具。直接用sudo apt-get intall就可以了。


hi,我想我的问题初步得到解决了,装了我两三天,呵呵,非常感谢两位的提点
是这样的,我原本是按照下面这篇博客来安装环境的http://blog.chinaunix.net/uid-25652733-id-291521.html,他开发板的平台和我一样,dm365.写的也挺详细,所以我就按照他的步骤一步一步的做。
我用的是实验室的服务器,本身就是ubuntu系统,下载的qt版本是qt-everywhere-opensource-src-4.7.2,原博客作者的意图应该是先装一个桌面版QT4.7.2-X86,然后再装一个arm版的QtE-4.7.2-arm.但是按照他在安装QT4.7.2-x86时的configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb来做,make,make install后在/usr/local/Trolltech/下生成的是Qt-Embedded-4.7.2,然后再编译qvfb,就会报qvfb must be compiled with the Qt for X11 package这个错误,而且creator里写好的程序用这个库也运行不起来,而按他的意思写好的程序又要在qvfb下运行,我qvfb又没法编译出来,对这些概念有点不清楚,很郁闷。后来zhxianbin提醒了我,我直接改configure -qvfb 再make 再make install后,在/usr/local/Trolltech/下生成Qt-4.7.2,然后creator里的helloworld程序调用这个库来编译运行就可以直接弹出helloworld的窗口。而在新的configure以后,安装文件下的qvfb也可以编译成功了,然后想用qvfb的话,就按照原先configure生成的Qt-Embedded-4.7.2的库里的qmake来,先打开qvfb,再run,qvfb里就也会有helloworld的窗口了。

我的想法是这样的,首先,qvfb这个好像在qt配置成embedded下是无法编译的,要配置成普通的linux版本才能生成,而按qt-embedded库编译后的程序又得在qvfb下才能运行。原作者可能没说清楚这些

不知道我的想法对不对,下一步要移植qt到dm365平台下,两位有了解怎么做吗?

如果你是按照你给的链接来做的话,交叉编译器什么的你应该都配置好了,编译出来的版本应该是arm版本的吧,你把编译出来的库还有相关的文件移植到开发板即可


hi,我是按照那个链接来做的,交叉编译,该移植的库和文件也都做了。出现两个问题,一是我在做这个链接#ln –s /dev/fb/0 /dev/fb0的时候,报错/dev/fb0这个设备不存在,但/dev目录下fb0和fb/0都是存在的。另外我直接跑helloworld测试程序,LCD没有反应。对了,我想问下Qt-extended是什么,我是不是还要移植这个到我的开发板上呢?

#11


引用 10 楼 donganwu 的回复:
Quote: 引用 8 楼 q245879 的回复:

Quote: 引用 5 楼 donganwu 的回复:

Quote: 引用 3 楼 zhxianbin 的回复:

你加了 -embedded x86 



引用 4 楼 allencui0313 的回复:
hi, 我的配置是这样的。
这个是编译qt-embedded版本
configure -debug -embedded -qvfb -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb -no-webkit -prefix /usr/local/Trolltech/Qt-embedded-qvfb-4.8.1 -confirm-license
然后,你需要去下载那个qvfb的工具。直接用sudo apt-get intall就可以了。


hi,我想我的问题初步得到解决了,装了我两三天,呵呵,非常感谢两位的提点
是这样的,我原本是按照下面这篇博客来安装环境的http://blog.chinaunix.net/uid-25652733-id-291521.html,他开发板的平台和我一样,dm365.写的也挺详细,所以我就按照他的步骤一步一步的做。
我用的是实验室的服务器,本身就是ubuntu系统,下载的qt版本是qt-everywhere-opensource-src-4.7.2,原博客作者的意图应该是先装一个桌面版QT4.7.2-X86,然后再装一个arm版的QtE-4.7.2-arm.但是按照他在安装QT4.7.2-x86时的configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb来做,make,make install后在/usr/local/Trolltech/下生成的是Qt-Embedded-4.7.2,然后再编译qvfb,就会报qvfb must be compiled with the Qt for X11 package这个错误,而且creator里写好的程序用这个库也运行不起来,而按他的意思写好的程序又要在qvfb下运行,我qvfb又没法编译出来,对这些概念有点不清楚,很郁闷。后来zhxianbin提醒了我,我直接改configure -qvfb 再make 再make install后,在/usr/local/Trolltech/下生成Qt-4.7.2,然后creator里的helloworld程序调用这个库来编译运行就可以直接弹出helloworld的窗口。而在新的configure以后,安装文件下的qvfb也可以编译成功了,然后想用qvfb的话,就按照原先configure生成的Qt-Embedded-4.7.2的库里的qmake来,先打开qvfb,再run,qvfb里就也会有helloworld的窗口了。

我的想法是这样的,首先,qvfb这个好像在qt配置成embedded下是无法编译的,要配置成普通的linux版本才能生成,而按qt-embedded库编译后的程序又得在qvfb下才能运行。原作者可能没说清楚这些

不知道我的想法对不对,下一步要移植qt到dm365平台下,两位有了解怎么做吗?

如果你是按照你给的链接来做的话,交叉编译器什么的你应该都配置好了,编译出来的版本应该是arm版本的吧,你把编译出来的库还有相关的文件移植到开发板即可


hi,我是按照那个链接来做的,交叉编译,该移植的库和文件也都做了。出现两个问题,一是我在做这个链接#ln –s /dev/fb/0 /dev/fb0的时候,报错/dev/fb0这个设备不存在,但/dev目录下fb0和fb/0都是存在的。另外我直接跑helloworld测试程序,LCD没有反应。对了,我想问下Qt-extended是什么,我是不是还要移植这个到我的开发板上呢?

/dev/fb0好像也是一个链接吧,你查看一下。
你运行helloworld没看到效果应该是framebuffer没有被调用,所以没有显示输出。