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" <> 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/
|