michael.hope at linaro.org
Thu Oct 27 22:49:29 UTC 2011
On Thu, Oct 27, 2011 at 5:18 PM, Zhenqiang Chen
<zhenqiang.chen at linaro.org> wrote:
>>> zlib is used to build binutils, which is built before GCC.
>>> If you install a 32-bit binary toolchain on 64-bit system, you might
>>> have link error. By default, there is no 32-bit zlib on 64-bit system.
>>> You have to install 32-bit zlib manually.
>> Yip, but both binutils and GCC include a local copy of the zlib source
>> that can be statically linked in during the build. It might be easier
>> than doing it separetly, especially as zlib is messy to build.
> Are you sure?
> I check binutils-2.21 source code. There is no zlib related source
> code like zlib.h. If it has, we should not build zlib separately.
Sorry, I was wrong. sourceware src/ has zlib. gcc pulls that in but
>>>>> (3) Currently, the embedded toolchain source packages are released
>>>>> as a tarball, which includes gcc, gmp, etc. New scripts are required
>>>>> to support it.
>>>> We should check what needs to be done to meet the licenses. All of
>>>> the tarballs used in building the binary are in .build/taraballs.
>>> I will add scripts to copy the tarballs to .build/tarballs.
>> From I guess?
> The root cause for this gap is that current embedded toolchain release
> creates some source packages from internal git server. And the package
> name is not in standard format: NAME-VERSION.
> The script will be a workaround to build and test the embedded toolchain.
> I will work with local team to improve the build process for future
> release. All the source packages should get from public links with
> standard format.
>> The glibc is more of a concern than the compiler. RHEL 5 is the
>> earliest version we need to support which is GLIBC 2.5 based. Ubuntu
>> 8.10 uses GLIBC 2.8 and might turn on other features like hardening or
>> the stack protector which could cause trouble.
>> I think we should build and test the binary under RHEL 5 itself.
> Stack protector is the issue on RHEL5.
> For us, we should build and test the binary under RHEL5.
> What do we release: series of toolchains for different versions of
> Linux or just one which can run on most popular linux versions?
> If we only release one binary, what's the preferred build system? And
> we should make sure it can run on different linux systems.
In the requirements spec I said we should support the following:
Redhat Enterprise Linux 5.7
Ubuntu 10.04.3 and 11.05
If we build on the oldest (RHEL 5) then it should work on the more
recent versions. We'll need to test on all of these for the first
release, but should be able to just test on RHEL and, say, Ubuntu
11.05 for subsequent versions.
The cloud and virtualisation does make this easier.
More information about the linaro-toolchain