[ELDK] Building ELDK from scratch

Phil Terry pterry at micromemory.com
Mon Apr 21 19:25:48 CEST 2008


I'm trying to build ELDK (head from git) for a project I'm working on.

I'm using a Mandriva 2007 Spring laptop and a Fedora 6 desktop. The
former is my preferred machine and the latter is to try and use an ELDK
supported host system.

I'm seeing build problems on both machines. I'm trying to work my way
through them but the type of things which are happening raise a few
questions for me.

First, I had rpm problems. Mandriva uses version 4.4.6 which seems not
to allow non-root users to use the chroot option heavily used by ELDK so
I had to use the 4.4.1 version from ELDK itself. The Fedora 6 uses 4.4.2
and seemed to not exhibit this problem. I think this is a problem with
the RPM fork issues so I'm wondering what Denx's strategy is going to be
on how to deal with this going forward.

Second, I am gradually building a list of development host issues which
are not listed in the documentation anywhere.

1. You must set MAKEINFO environment variable to makeinfo for the eldt
make build (eldt.4) to work.

2. You need a base set of packages available on your host:
	flex for crosstools
	binutils-devel for libiberty in ldd
	and I'm sure I'll find more...

3. My system has xemacs instead of emacs installed so autoconf won't
install correctly without patching the SPEC file.

4. The trg gcc build fails because of a locale issue to do with de_DE.
The localedef invocation (occurs on my mandriva build but not on the
Fedora 6 build) fails because ISO-8859-1 is not found in the charset
directory /usr/share/i18n/charset which is not present on the work cross
build. If I run the localdef of my host (after installing
glibc-i18ndata) it works fine but the cross_tool path localdef
(installed from elocaldef build eldt.17) fails. So I patched out the
de_DE check in the spec file to get past this... don't know what the
correct solution should be.

On the Fedora 6 none of this happens.

5. Now stuck on trg 33 libuser which is complaining about GTK_DOC enable
and use_libtool usage in the automake stuff. Can't get passed this on
Mandriva. Don't see this on Fedora 6.

6. Fedora 6 is stuck on "configure: error: Cannot use an external
APR-util with the bundled APR" in httpd trg.40

So I have installed gtk-doc on my Mandriva and my Fedora box is running
a local apache web server...

So what I'm questioning is why is the ELDK build process so sensitive to
host development system configuration and user options (I'm not allowed
to use xemacs or run a webserver!) when it goes to such great lengths to
compile a cross compile system and set the paths explicitly. Shouldn't
it be "jailed" in its own eldt/trg constraints, ie it builds all the
tools it needs first and then uses only those tools to build its target.

Have I misunderstood something or configured something wrong or missed
some step in the build process?

And if anyone else has any suggestions on how to continue from my
current impasse they'd be welcome.

Cheers
Phil Terry

By the way, as I'm rerunning builds so frequently I do have a patched
version of ELDK_BUILD which reruns a build from the failed step so you
can tryout fixes without running halfday builds for crosstools! I'll
post the patch if anyone's interested (adds a couple of environment
variable DEV_BUILD and DEV_BUILD_STEP to preserve the old build tree and
rerun stage DEV_BUILD step DEV_BUILD_STEP, behaviour is standard if
these variables aren't set)





More information about the eldk mailing list