build Graphics Tool Kits for PC386

Pavel Pisa ppisa4lists at pikron.com
Wed Apr 1 08:52:25 UTC 2015


Hello Qiao Yang,

thanks for the progress report.

On Wednesday 01 of April 2015 01:42:04 QIAO YANG wrote:
> I've cleaned and recompiled it with the latest rtems4.11 and gtk from
> github, and also the microwin and the nxlib from alex's fork, apply the
> microwin patch manually(as for the commit number doesn't exist). From the
> build log, It seems that many tests have failed for microwin due to
> "undefined reference". The full build log is here the link to my evernote.
>
> https://www.evernote.com/shard/s271/sh/de7200c2-721b-47e5-b3b4-924b33483ec2/bb22975157ac49766edc434ec2af9e0a
>

As for Microwindows, we have successfully builded Microwindows
and used /opt/rtems4.11/.... installed libraries for more own
test on x86 and ARM even our complete production ARM RTEMS 4.10
application could be compiled against 4.11 with actual Graphics Tool Kit.

But there may be some demos in Microwindows sources which do not build
according for RTEMS (I will recheck with actual RTEMS sources).
There is list of executables which as been successfully compiled
in my Microwindows build

rtems-graphics-toolkit/build/microwin/src/bin

move world nxmag bmpdemo makebmp nxkbd convbdf setportrait nxview npanel slider demo polydemo mdemo mwdvetest.res mine landmine arcdemo mtest2 
grabdemo tux tuxchess fonts fontdemo setselection convbmp pcfdemo logfont nxclock mwdvetest malpha ntetris nsaver monobitmap nxev demo2 dashdemo 
blitdemo tsdemo getselection nxeyes demo5 nxlsclients nxcal launcher mtest nxscribble rgndemo t1demo composite snap_ppm ftdemo demo6 nxroach

The malpha is good/know to work candidate for testing

I run it by

  qemu-system-x86_64 -gdb tcp::1234 -enable-kvm -kernel ./malpha \
      -vga cirrus \
      -net nic,vlan=0,model=e1000 -net user,vlan=0 \
      -append "--console=com1"

But you can/should use standard RTEMS testing framework which can found
in

  git://git.rtems.org/rtems-testing.git


Back to your log

make[3]: *** No rule to make target '-ljpeg', needed 
by '/home/yangqiao/development/rtems-386/rtems-graphics-toolkit/build/microwin/src/bin/nxscribble'.
make[3]: *** No rule to make target '-lfreetype', needed 
by '/home/yangqiao/development/rtems-386/rtems-graphics-toolkit/build/microwin/src/bin/nxscribble'.
make[3]: Target 'all' not remade because of errors.
make[3]: Leaving directory '/home/yangqiao/development/rtems-386/rtems-graphics-toolkit/build/microwin/src/demos/nxscribble'
/home/yangqiao/development/rtems-386/rtems-graphics-toolkit/build/microwin/src/Makefile.rules:527: recipe for 
target 'subdir-/home/yangqiao/development/rtems-386/rtems-graphics-toolkit/build/microwin/src/demos/nxscribble/' failed

I see some problems caused problem to find some libraries.
You should find these libraries installed in /opt/rtems4.11
after

 ./do_it -A

/opt/rtems4.11/i386-rtems4.11/pc686/lib/libjpeg.a
  libpng.a -> libpng15.a

etc.

If they are not there then it is necessary to find why they have not been
installed. They can be copied there from Graphics Tool Kit build manually
to check the rest of the build. But the problem should be resolved.

This problem seems to propagate to other components as well.

But generally, Microwindows libraries (not demos) seems to be fully compiled.

Real problem appears in the build of FLtk

  /home/yangqiao/development/rtems-386/rtems-graphics-toolkit/build/fltk-1.3.0/

But even there many of tests build

Compiling Fl_PNG_Image.cxx...
Compiling Fl_PNM_Image.cxx...
/home/yangqiao/development/rtems-386/compiler/4.11/bin/i386-rtems4.11-ar cr ../lib/libfltk_images.a ...
=== making test ===
Compiling unittests.cxx...
Linking unittests...
Compiling adjuster.cxx...
Linking adjuster...
Compiling arc.cxx...
....
Compiling buttons.cxx...
Linking buttons...
Compiling cairo_test.cxx...
Linking cairo_test...
/home/yangqiao/development/rtems-386/bsps/4.11/i386-rtems4.11/pc386/lib/libnano-X.a(image_jpeg.o): In function `GdDecodeJPEG':
/home/yangqiao/development/rtems-386/rtems-graphics-toolkit/build/microwin/src/engine/image_jpeg.c:118: undefined reference to `jpeg_std_error'

Yet there seems to be problem with finding JPEG library.

As for Fluid (graphical GUI designer tool), it fails but that is expected, because
it has no purpose to be build for RTEMS. There is required native Linux executable to
be build even for RTEMS target design

Compiling ../fluid/fluid.cxx...
Linking ../fluid/fluid...
../fluid/fluid.o: In function `save_template_cb(Fl_Widget*, void*)':
/home/yangqiao/development/rtems-386/rtems-graphics-toolkit/build/fltk-1.3.0/test/../fluid/fluid.cxx:237: undefined reference to `template_panel'

But generally, I have newer used FLtk with RTEMS and I expect that there
is quite huge amount of work left to make it usable on RTEMS.
It requires to compile (or use actual RTEMS 4.11 dlopen) to include
X style window manager in actual running RTEMS system to be able to manage
FLtk windows.

But that could be great target and usesfull target for your
or some others work

===========================================================
BUT GRAPHIC TEST LOADED BY NEW DLOPEN COULD BE GEAR AND
REALLY USESFULL TARGET FOR YOUR OR SOME OTHERS WORK
===========================================================

Because today it is possible to build base RTEMS system
with drivers and may it be base Graphics Tool Kit
libraries compiled in basic system image and then load
all test dynamically under some scrips requests and prepare
some guidepost type gui for manual iteration through tests.

On Wednesday 01 of April 2015 01:42:04 QIAO YANG wrote:
> Here is an error of freetype
> at line 2119 of build log:
> rmdir: failed to remove
> ‘/home/yangqiao/development/rtems-386/bsps/4.11/i386-rtems4.11/pc386/lib/in
>clude/freetype2/freetype/internal’: No such file or directory
> /home/yangqiao/development/rtems-386/rtems-graphics-toolkit/freetype-2.4.10
>/builds/unix/install.mk:31: recipe for target 'install' failed make:
> [install] Error 1 (ignored)
>
> I've read that the freetype2 didn't use internal folder anymore after a
> release of 2012. It's not a fatal error here and it's ignored. But I wonder
> if the tests still use some headers from it which may cause the massive
> undefined references ( I know little about the detail, just a personal
> suspicion).
>
> As for the rest errors, you may know them much better :), I'll also try to
> find out .

Please, try to check what is a problem and send report.

Try to correct freetype-2.4.10/builds/unix/install.mk to resolve the
error and run build again. You should have all sources
in GIT repositories so your modification are
easily found by

  git diff
  (cd microwin && git diff)
  (cd nxlib && git diff)

Best wishes,

              Pavel





More information about the users mailing list