Even without X, if I try to build cairo with X support, configure don't find it
but don't say any errors and configure it for X anyway.
I though I could use the apt-get package for running on the device, and compile
cairo/gtk myself, but it fail at some point anyway:
cairo-xlib-surface.c: In function '_swap_ximage_2bytes':
cairo-xlib-surface.c:348: error: invalid 'asm': invalid operand for code 'w'
This is clearly something I couldn't do. I think I'll dump all that, forget
about trying to run eabi gtk code :(.
--- In "Dunge2" <> wrote:
>
> I tried as much as I can, but I'm still unable to do it. Seems like not a lot
> of people ever cross-compiled Xorg.
>
> I tried to follow their guide with JHBuild:
> http://www.x.org/wiki/CrossCompilingXorg
>
> If I simply call ./jhbuild, after 35/150 modules, it call gcc instead of my
> %CC and fail.
> If I call "./jhbuild build xserver", the first package (1/35) try to execute
> my sys-root/usr/bin/grep, and fail.
>
> Any other idea? If I could mix apt-get packages with those I compiled,...
>
> Seems like I'm stuck in an impossible situation :(
>
> --- In "Dunge2" <dunge2@> wrote:
> >
> > Hello all, this is going to be a long post.
> >
> > First, thanks to Andy and Doug who helped me get this far, I couldn't do it
> > without you.
> >
> > Let's resume:
> > I have a TS-TPC-7390. OABI/Xorg was slow. I followed Andy guide in the
> > first post of the "How to make an EABI cross compiler for ts boards, step
> > by step" thread and used the crosstool script he posted. That allowed me to
> > have a maverickcrunch patched crosscompiler with latest versions of gcc and
> > libc.
> >
> > With this tool, I started compiling libs to create a full rootfs. This is
> > the list of libs I re-compiled (not necessarily in order), with notes about
> > problems I encountered and solutions:
> >
> > -glib (cannot run test program while crosscompiling, used config.cache file
> > (see other thread)).
> > -glibmm
> > -libsigc++
> > -libxml2
> > -libtiff
> > -libjpeg
> > -libgif
> > -libpng (setjmp.h re-inclusion, added #warning)
> > -jasperlib (--enabled-shared)
> > -atk
> > -freetype2 (added LCD-rendering optimization (see LFS))
> > -fontconfig
> > -pixman (force disable arm-simd and arm-neon optimizations)
> > -tslib (no pressure sensors patch, plugin module patch)
> > -directfb (gfx-drivers=none, inputdriver=keyboard,tslib)
> > -cairo (dfb backend)
> > -cairomm
> > -gtk+ (dfb backend, cannot run test program while crosscompiling: modified
> > configure to skip, also updated my build machine glib-mkenums)
> > -gtkmm
> > -pango
> > -pangomm
> > -libglade
> > -libglademm
> > -my application
> >
> > And I think that's all. I then took the TS-provided kernel, initrd and
> > debian-armel-eabi rootfs and put everything on a SDcard. I then copied my
> > sys-root folder over the TS-rootfs overwriting files. To my surprise, it
> > booted and things I compiled works! I had a few things to do, like
> > configure pango font files, tslib env var, activate pts for telnet, and I
> > think I have a serial port problem, but in general it went quite fine.
> >
> > Results:
> > It's hard to tell. Boot time of application seems reduced by half!
> > Unfortunately, application responsiveness (click on button, refresh window,
> > etc) is about the same as before.
> >
> > I have to tell, before I started this, I tried recompiling all these libs
> > for OABI (directly on device, took a week). Result with DFB was the same
> > speed as with Xorg, but using those rebuilt up-to-date libs with Xorg
> > slowed things down by half compared to Xorg with the libs from apt-get. So
> > there might be something awful somewhere in there.
> >
> > I also noticed that using pango markup language with DirectFB is a MASSIVE
> > bottleneck. Refreshing a single label (a clock) every second with Xorg-OABI
> > takes 10% cpu, with DFB-EABI it takes 50%!.
> >
> > That, combined with the fact that DFB refresh differently that Xorg, and
> > that TSLIB don't seems to always send on_release events makes me want to
> > try Xorg on EABI, which would probably react better.
> >
> > Questions:
> > -Anyone have experience in cross-building Xorg, and know what to do
> > differently on our device (for drivers and config files)?!
> >
> > -I set CFLAGS to add mcpu/mfpu/mfloat-abi flags to compile the libs.
> > Unfortunately, those who used g++ instead of gcc (ie. glibmm gtkmm, etc)
> > didn't seem to add it to the build command. Maybe I should have added them
> > to CPPFLAGS too? Do you think it would change things a lot?
> >
> > -Building my application I encountered a "Error: register expected" error.
> > The bugged register is mv8. I searched google and found this thread:
> > "http://www.gossamer-threads.com/lists/gentoo/embedded/178129" in which
> > MartinGuy talks about it, but no real answer. The patch mentioned there
> > isn't in the Andy package. Would rebuilding our crosstool with it fix the
> > problem? Would libs I compiled stay compatible? For now, I simply disabled
> > the mcpu/mfpu/mfloat-abi flags for my application and it compiled fine.
> >
> > -Would rebuilding the kernel with that crosstool gives anything?
> >
> > I will gladly upload my cross-tool folders with instructions on how to use
> > it here. But first, I want to be sure that everything is ok because for now
> > it's not a mind-blowing improvement. Principally ditch DFB and use Xorg.
> > This post is just about giving ETA of my situation if others have something
> > to say.
> >
>
------------------------------------
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/ts-7000/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/ts-7000/join
(Yahoo! ID required)
<*> To change settings via email:
<*> To unsubscribe from this group, send an email to:
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|