Am 03.01.2017 um 15:27 schrieb Stefan Seyfried:
> On 03.01.2017 14:59, Andreas Färber wrote:
>> Am 02.01.2017 um 20:49 schrieb Stefan Seyfried:
>>> Am 02.01.2017 um 17:11 schrieb Andreas Färber:
>>>> cross-compiling is mainly used for kernels.
>>>
>>> Ever asked yourself why kernels are not compiled with qemu-linux-user?
>>
>> armv6hl does use qemu-linux-user, including the kernel. Certainly it's
>> not the fastest, but neither is native ARM11, and the amount of RAM on a
>> Raspberry Pi 1 is inferior compared to x86_64 servers.
> 
> So you also agree that cross-compiling on x86_64 is beneficial for such 
> targets, especially for developers who have many
> edit-compile-test cycles to run.

Doh, I gave an oSC16 talk about cross-compilers for openSUSE...

https://events.opensuse.org/conference/oSC16/program/proposal/918

Which would btw give the interested some clues on how to build one for
aarch64, by looking at my referenced mipsel work or Richie's older
preparations.

https://build.opensuse.org/package/show/home:a_faerber:mips/gcc6
https://build.opensuse.org/package/show/devel:gcc/cross-glibc

Therefore your comments have been double insults to me, Stefan.

The problem is that no one has to my awareness been contributing to this
topic since. I can't enable dozens of new ARM boards, keep ARM kernels
building, allow debugging/flashing microcontrollers from Linux, port
openSUSE to new architectures, bootstrap Maven, work on more/better
cross-compilers, ... all at the same time - someone will always be
unhappy that their favorite topic is not making progress.

As a long-time community member you should very well know that the key
is helping with contributions wherever you care. If you see
cross-compilers as lacking, contribute to the toolchain(s) you
personally need. For library dependencies that would mean someone needs
to add --sysroot and foreign-architecture support to zypper.

Otherwise if nobody does anything, nothing will improve!

> And for that purpose, the OE SDK is one of the best tools available IMNSVHO.
> 
> Additional bonus: you build it once and every developer can deploy it on his 
> preferred Linux distribution, where he has
> all the tools (editors, VCS GUI frontends, ...) he likes best.

I have grudgingly used ARM and Linaro cross-toolchains (e.g., for THUMB
microcontroller firmware), they simply cannot be updated with zypper
(and they usually lag behind upstream/openSUSE), so you are left with
bit-rotting compilers on your system. The same will hold true for tools
such as crosstool-ng or any self-written toolchain build scripts.

If you compile a static binary, you can use any toolchain you like. But
if you want to build a regular openSUSE program for the purpose of
deployment then I would highly recommend building against the openSUSE
libraries and not some arbitrary OE or other foreign versions that may
or may not be compatible with our ABI and patched libraries - for
development build-testing it may be sufficient of course. I have
outlined how to obtain the openSUSE packages for a sysroot, and that is
independent of what compiler toolchain you choose, only the location
will change.

Note that I specifically wrote about aarch64, as the armv7hl toolchain
is not entirely well configured - no armv7hl binutils but "arm", so
$(CROSS_COMPILE)as won't work.
http://bugzilla.opensuse.org/show_bug.cgi?id=936463

The newer cross-arm-gcc6 may not be using the same compiler defaults as
armv6hl/armv7hl, so build results may differ from native gcc.

Regards,
Andreas

-- 
SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)
-- 
To unsubscribe, e-mail: [email protected]
To contact the owner, e-mail: [email protected]

Reply via email to