ubuntu上minigui调试环境的建立

     minigui一共有两个版本:商业版(2.0.4)和GPL版(1.6.10),问了一下飞漫软件,使用商业版前期的费用是9万,有技术支持,包括5000个licenses的费用,后期10K的量的话,每个licenses要6块,50K的话,就是4块,如果用GPL版的话,就没有前期的费用,只有licenses的费用,老板想了一下,我们还是使用开源版,其实我要是老板的话,我就用商业版,出产品快阿。。。。
     ubuntu下minigui环境的建立:
minigui需要一个qvfb的支持:
sudo apt-get install qt3-dev-tools-embedded

Provided by: qt3-dev-tools-embedded_3.3.8-b-0ubuntu3_i386
 
NAME
        qvfb - Virtual framebuffer for Qt
 
DESCRIPTION
        The  virtual framebuffer allows Qt/Embedded programs to be developed on
        your desktop machine, without switching between consoles and X11.
 
        Start a Qt/Embedded master application  (i.e.,  construct  QApplication
        with  QApplication::GuiServer flag or use the -qws command line parame‐
        ter). You will need to specify to the server that you wish to  use  the
        virtual framebuffer driver, e.g.:
 
            widgets -qws -display QVFb:0
 
        You  may  prefer  to  set  the  QWS_DISPLAY  environment variable to be
        QVFb:0.
 
        qvfb supports the following command line options:
 
         -width width: the width of the virtual framebuffer
          (default: 240).
         -height height: the height of the virtual framebuffer
          (default: 320).
         -depth depth: the depth of the virtual framebuffer (1, 8
          or 32; default: 8).
         -nocursor: do not display the X11 cursor in the
          framebuffer window.
         -qwsdisplay :id the Qt/Embedded display id to provide
          (default: 0).
 
         Virtual Framebuffer Design
 
        The virtual framebuffer emulates a framebuffer using  a  shared  memory
        region  (the  virtual frame buffer) and a utility to display the frame‐
        buffer in a window (qvfb).   The  regions  of  the  display  that  have
        changed are updated periodically, so you will see discrete snapshots of
        the framebuffer rather than each individual drawing operation. For this
        reason  drawing  problems  such as flickering may not be apparent until
        the program is run using a real framebuffer.
 
        The target refresh rate can be set via  the  "View|Refresh  Rate"  menu
        item.  This  will cause qvfb to check for updated regions more quickly.
        The rate is a target only.  If little drawing is being done, the frame‐
        buffer will not show any updates between drawing events. If an applica‐
        tion is displaying an animation the updates will be frequent,  and  the
        application and qvfb will compete for processor time.
 
        Mouse  and keyboard events are passed to the Qt/Embedded master process
        via named pipes.
 
        The virtual framebuffer is a development tool only. No security  issues
        have  been  considered  in the virtual framebuffer design. It should be
        avoided in a production environment;  QT_NO_QWS_VFB  should  always  be
        defined in production libraries.

libminigui-1.6.10
minigui-res-1.6.10
mg-samples-1.6.10

    首先编译libminigui-1.6.10,其编译方式请参照minigui的相关说明,最好不要更改prefix参数,同时要注意你的LD_LIBRARY_PATH定义,
不然你编译minigui的例子的时候,会报出系统无法找到库文件和头文件的问题,头文件默认会安装在/usr/local/include目录下,但是你如果不指定
C_INCLUDE_DIR的话,同样会报出找不到头文件的问题,最好把头文件拷过去就行,在libminigui安装好了之后,安装minigui的res,这个很简单,
这个执行完毕之后,可以编译例子,编译完的例子程序运行时,会出现如下的错误:
yongtao@ubuntu:~/km118-display/mg-samples-1.6.10/src$ ./simplekey 
NEWGAL: Does not find matched engine: qvfb.
InitGUI: Can not get graphics engine information!
问题就是没有安装qvfb,你去查看你的/usr/local/etc/minigui.cfg文件,指定的显示器gal是qvfb,ubuntu的用户不用自己下载qvfb的代码来
安装,并且自己安装还会说找不到qt3,而实际上qt3已经被安装,只需要使用我最前面使用的命令安装即可。。
然后再次运行,还是会报一样的错误,这里就需要先运行qvfb
yongtao@ubuntu:~/km118-display/mg-samples-1.6.10/src$ qvfb &
[1] 16533
会弹出一个界面,file->configure来配置屏幕大小。
然后运行你编译的例子
yongtao@ubuntu:~/km118-display/mg-samples-1.6.10/src$ ./simplekey
在弹出的界面显示你运行的控件,则例子运行成功!

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。