Hi Guys,
I still monitor a lot of what is going on on the LinuxBIOS list. I am now doing a lot of work on ARM and MIPS stuff, in which environments a cross-compilation is required ... well also, in most of my embedded x86 stuff I maintain I now also use a cross-compilation toolchain so that I can use uClibc.
Maybe it would be an idea to create a very simple LinuxBIOS toolchain system where from a small SVN download, one can have a clean build environment using a pseudo cross-compile environment with a clean compiler per the 'latest' LinuxBIOS suggestion.
I personally use either Buildroot or another really interesting environment called openwrt (which has a really neat build environment aimed at the low-cost broadcom chip-based router environment), but essentially with these environments, one does an SVN checkout which downloads a series of scripts and makefiles, and from that a make creates a completely new toolchain from the specified known sources.
The really great thing about this is that one then has a KNOWN toolchain and all compiles are done with this KNOWN toolchain. Removes a whole lot of crap from the entire build environment, and, it generally works on ANY Linux platform - sure, there are some issues on OSX etc, but it does sure make a clean Linux build environment.
This may be a resolution to the screwed toolchains supplied in certain distros. I personally stopped using ANY flavour of redhat about 5 years ago when they released 7.1 with totally screwed beta compilers, which just broke everything. Since then I have used SuSE and have mostly never looked back. I have never used any RH or Fedora distro since then, purely because I have no idea what they will incorporate in the next release. At least by using the core code, one has a bit of security in knowing what one is dealing with .... ever tried to tell RH that they introduced a bug in the compiler toolchain??? I think it would probably have fallen on deaf ears. I must also point out that since 7.1, RedHat have insisted on creating their own 'patched' versions of GCC which may work for them, but for generic sources, there are frequently issues. (Especially when cross-compiling).
Just my tuppence!
Hamish
ron minnich wrote:
On 1/23/07, Segher Boessenkool segher@kernel.crashing.org wrote:
So you should just try it out somewhere in your build system -- gcc -fno-stack-protector -S -xc - < /dev/null -o /dev/null or something similar, grab the return code -- and that's all you need to do.
we'd always managed to avoid this kind of ugliness, but I guess we have no choice.
What's going to get interesting is when the form that this test takes gets broken by the various distros :-)
Some expert person want to try out a fix? If not, I guess I will.
ron