![](https://seccdn.libravatar.org/avatar/1cd903ce739b05e07b73c4db146530d7.jpg?s=120&d=mm&r=g)
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: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org