Ron Knollman wrote:
> Thank you for creating ptxdist, it is a great tool!
thanks, you're welcome!

> I have successfully created a toolchain, kernel, and root filesystem and
> executed it on my target hardware using an Atmel AT91SAM9G20 processor using
> ptxdist 2010.01.0.  This project was based on the example project you
> provide in the distribution:   OSELAS.BSP-Pengutronix-Generic, keeping the
> gcc, glibc, and binutils versions as originally specified in that example
> project, but using my own Externel Kernel source tree (2.6.28).

> I now need to create an environment to support an older release of our
> product that uses different package versions from your example project.  I
> have created a new toolchain by using your default toolchain ptxconfig file
> and changing the following:    gcc to 4.2.4     glibc to 2.5   binutils left
> at 2.18     and a new project by cloning your example project and modifying
> it to use the new toolchain (and again my own external kernel source tree).

> The problem:
> 
> The toolchain build completes successfully, but in looking at the logfile, I
> had numerous "warning:  C99 inline functions are not supported:  using
> GNU89" messages (on many packages).  An example of this warning from the
> logfile is attached as "ptxdist_warning1.txt".

I think these can be ignored.

> I created a new project by cloning your example project as before, and
> changing to the new toolchain.  A build of that project failed, yielding an
> error:  "undefined reference to ppoll" (as shown in attached
> "ptxdist_error1.txt".  I did find the file "ppoll.c" in the toolchain
> build-target/glibc-2.5/io directory, so the ppoll routine exists, but for
> some reason was not included?

The problem on arm is, it doesn't support ppoll until 2.6.33 or even
.34. In recent glibc (i.e. 2.8) with a non ppoll kernel, the glibc
"emulates" ppoll. Resulting in racy code without telling the developer
that it is racy. (ppoll was introduced to fix a race in "change signal
mask and poll").

> Thinking the warnings during the toolchain build might be the culprit, I
> changed the gcc version to 4.3.2 (same as your default toolchain) and build
> a new toolchain.

It seems there's a patch missing on your glibc and/or gcc. At least this
combinations seems to be broken.

> This time the toolchain build failed with an include path problem as shown
> in attached "ptxdist_error2.txt".

> Can you help with this problem?  Is this a dependency issue between the
> gcc/glibc/binutils versions I have selected.  If so, how do I determine the
> "right mix" of versions of these packages to be successful.  For
> compatibility with the older release of our project, I don't much mind
> changing gcc versions, but would much like to stay with glibc 2.5 and my
> external kernel source tree.

You can look for older udev without ppoll. Or replace the ppoll by poll
+ fiddeling with the sigmask. udev make generally no fun with old libc.
We even had to patch it to work with glibc-2.8.

cheers, Marc

-- 
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |

Attachment: signature.asc
Description: OpenPGP digital signature

--
ptxdist mailing list
[email protected]

Reply via email to