Hi All,
I am working in setting up a GUI for Beagle board.I have used Minigui
gui apllication.I have configured most of the options & compiled it.I
have also activated the frame buffer.When i tried to run the demo
application given in the package,i am getting the error as
chinna@HMS-DENON:~/ARAVIND/GUI/mde-1.6.10/same> ls
Makefile Makefile.am Makefile.in res same same.c same.o
chinna@HMS-DENON:~/ARAVIND/GUI/mde-1.6.10/same> ./same
NEWGAL: Does not find matched engine: qvfb.
InitGUI: Can not get graphics engine information!
The details of this GUI application that i used is given below.
/
*************************************************************************************************/
NAME
MiniGUI - a compact cross-OS Graphics User Interface support
system
for real-time embedded systems.
1. INTRODUCTION
MiniGUI is a cross-operating-system Graphics User Interface
support
system for real-time embedded systems. This is GPL'd version
1.6.10
released by Feynman Software (http://www.minigui.com).
MiniGUI aims to provide a fast, stable, lightweight, and cross-
platform
Graphics User Interface support system, which is especially fit
for
real-time embedded systems based-on Linux/uClinux, eCos, and
other tranditional RTOSes, such as VxWorks, uC/OS-II, pSOS,
ThreadX,
Nucleus, and OSE.
MiniGUI defines a set of light windowing and GDI (Grahpics Device
Interface) APIs for applications. By using them, an application
can create
multiple windows and/or controls, and can draw in these windows/
controls.
MiniGUI is composed of three libiraries: libminigui (source is in
src/),
libmgext (ext/), and libvcongui (vcongui/). Libminigui is the core
library,
which provides windowing and graphics interfaces as well as
standard
controls.
Libmgext is an extension library of libminigui and provides some
useful controls and convenient user interface functions, such as
`Open File Dialog Box' and 'Color Selection Dialog Box'.
Libvcongui
provides a virtual console window in which you can run UNIX
programs which are in character mode.
You can configure and compile MiniGUI as one of three runtime
modes:
* `MiniGUI-Threads': A program running on MiniGUI-Threads can
create
multiple cascaded windows in different threads, and all the
windows
belong to a single process. MiniGUI-Threads is fit for some real-
time
systems on Linux/uClinux, eCos, uC/OS-II, VxWorks, pSOS,
ThreadX,
and OSE.
* `MiniGUI-Processes': A program running on MiniGUI-Processes is
an independent process, which can also create multiple windows.
MiniGUI-Processes is fit for some complex embedded systems, such
as
PDAs, Thin-Clients or STBs. This mode is only useful for full-
featured
UNIX-like operating systems, like Linux.
* `MiniGUI-Standalone': A single process version of MiniGUI. This
mode
is useful for some systems which lack of PThread support, like
some
buggy uClinux systems.
2. MAIN FEATURES OF THIS VERSION
The main features of this version is illustrated as follow:
* Support for three embedded operating systems: Linux, uClinux and
eCos.
* Support for MiniGUI-Threads runtime mode.
* Support for built-in resources. You can compile the resources
(bitmaps, icons, and fonts) into the library, and there are no
needs
to read the resources from files. Thus, MiniGUI can be used on
some
embedded systems without file systems.
* Features of windowing sub-system:
* Maturate multi-window and messaging mechanism.
* Maturate multi-window and messaging mechanism.
* Support for dialog box and message box.
* Common controls, including static label, button, single-line
and
multi-line edit boxes, list box, combo box, progress bar,
property sheet, toolbar, track bar, tree view, list view,
month calendar, grid view, animation, and so on.
* Support for other GUI elements, including menu, acceleration
key,
caret, timer, etc.
* Support for skin UI. You can use skin APIs to build your dashy
user interfaces.
* Support for multiple keyboard layouts, including American PC,
French, German, Italian, Spanish, etc..
* Support for input method interface to support special input
method,
such as softkey, hand-writing, and so on.
* Features of graphics sub-system:
* Support for enhanced graphics APIs for high-end video device.
You can use these APIs to do raster operations, create complex
regions, draw or fill ellipses, arcs, and polygons, etc.
There are advanced 2D graphics functions available on C99
math library.
* Support for Windows resource files, for example, Windows icon
and cursor.
* Support for almost all popular image file types including
GIF, JPEG, PNG, Win32 BMP, etc..
* Support for multiple char sets and multiple font types.
At present, what are supported char sets include ISO8859-x,
GB2312, GBK, BIG5, UNICODE UTF-8/UTF-16 encodings.
The font types supported are RBF, VBF, and QPF.
3. NOTES FOR THIS GPL RELEASE
This is the GPL release of MiniGUI V1.6.10. This version has the
almost same features as the commercial version MiniGUI-VAR V1.6.10.
However, this version has the following limitations:
* It only provides support for Linux, uClinux, and eCos operating
systems.
You still need to get a commercial license from Feynman Software
for other RTOSes, like VxWorks, OSE, uC/OS-II, ThreadX, and
Nucleus.
* It only provides support for MiniGUI-Threads runtime mode. You
still
need to get a commercial license from Feynman Software for
MiniGUI-Processes and/or MiniGUI-Standalone runtime modes.
* It only includes font engines for RBF, VBF, QPF font types. You
still
need to get a commercial license from Feynman Software if you
want to use TrueType fonts.
* It only provides support for the following char sets/encodings:
ISO8859-1, GB2312, BIG5, UNICODE UTF-8, and UNICODE UTF-16. You
sitll need to get a commercial license from Feynman Software if
you
want to use more char sets/encodings.
* It does not include any builit-in input method. You can develop
you own input method or use mGi component provided by Feynman
Software.
* It only includs GAL engines of Dummy, FBCON, QVFB, CommLCD, and
Shadow.
* It only includs IAL engines of Dummy, Console, QVFB, CommInput,
Custome,
Auto, and Random.
4. INSTALLING MINIGUI ON A LINUX PC BOX
4.1 Before installation
Please download the following tarballs from http://www.minigui.org:
* libminigui-1.6.x.tar.gz: the source of MiniGUI libraries,
including
libminigui, libmgext, and libvcongui.
* minigui-res-1.6.x.tar.gz: the resource used by MiniGUI,
including
basic fonts, icons, bitmaps, cursors, and imetables.
* mde-1.6.x.tar.gz: the demos for MiniGUI Version 1.6.x.
• mg-samples-1.6.x.tar.gz: the samples for MiniGUI Version 1.6.x.
Note that the tarballs needed by the current MiniGUI release are
listed in "Version" file. Please make sure you have installed the
correct tarballs.
MiniGUI can run on Linux console with FrameBuffer activated. If you
video chip
is VESA 2.0 compliant (most video chips support VESA 2.0), you can
active Linux
kernel's VESA FrameBuffer by add a boot option 'vga=0x0317'. This
option will
use VESA BIOS to enter a 1024x768-16bpp display mode. Please make
sure that
your display can support this mode.
You can also run MiniGUI on a virtual Frame Buffer. Currently,
MiniGUI V1.6.10
can run on Qt Virtual Frame Buffer (QVFB). Please download
qvfb-1.1.tar.gz
tarball from the download zone of this site and install qvfb first.
4.2 Installing resource files of MiniGUI
We must install resource files of MiniGUI first. Please follow
the steps below to do it:
1) Use `tar' to extract minigui-res-1.6.x.tar.gz. You can use
the following command:
$ tar zxf minigui-res-1.6.x.tar.gz
2) Change to new directory and run `make' as a super user:
$ su -c make install
4.3 Configure and compile MiniGUI
MiniGUI uses `automake' and `autoconf', so configuration and
compilation
of MiniGUI are very easy:
1) Use `tar' to extract `libminigui-1.6.x.tar.gz' to a new
directory:
$ tar zxf libminigui-1.6.x.tar.gz
2) Change to the new directory and run `./configure':
$ ./configure
3) Run the following commands to compile and install MiniGUI:
$ make; su -c 'make install';
4) By default, libraries of MiniGUI will be installed in
`/usr/local/lib'. You should make sure that this directory
is listed in `/etc/ld.so.conf' file. And after having
installed
them, you should run the following command to update the
cache
of shared library system:
$ su -c ldconfig
5) If you want to specify which features MiniGUI provides, you
can run
$ ./configure --help
to see the complete configuration options listed, then
disable or
enable some features by using command line switches. For
example,
if you do not want MiniGUI to load JPEG pictures via the
function
LoadBitmap, you can use
$ ./configure --disable-jpgsupport
6) Note that some features of MiniGUI depend on other
libraries.
Please make sure that you have installed them.
4.4 Run demos of MiniGUI
If you have installed MiniGUI version 1.6.x or later, you should
use
our new demo system called `MDE'. 'MDE' is a comprehensive
demostration
environment for MiniGUI version 1.6.x, more pretty and useful.
Before running the demo programs, you should extract these
tarballs
and compile them:
1) Extract the tarball to a new directory by using `tar' command.
2) Run `./configure' and `make' to compile the demos.
$ ./configure
$ make
3) Try to run demos and applications. For example, you can go
to
`mde-1.6.x/same/' to run `same':
$ cd same
$ ./same
/
*************************************************************************************************/
Can anyone help in this regard.
Thanks,
John.