Arm binaries
kinke
noone at nowhere.com
Thu Nov 2 23:57:15 UTC 2017
On Saturday, 28 October 2017 at 17:39:40 UTC, kinke wrote:
> On Saturday, 28 October 2017 at 17:16:46 UTC, Joakim wrote:
>> On Saturday, 28 October 2017 at 14:54:17 UTC, Johannes Loher
>> wrote:
>>> On Thursday, 26 October 2017 at 16:58:59 UTC, Johan Engelen
>>> wrote:
>>>> On Wednesday, 25 October 2017 at 10:03:37 UTC, Andrea
>>>> Fontana wrote:
>>>>> On Wednesday, 25 October 2017 at 07:01:59 UTC, Joakim wrote:
>>>>>> On Wednesday, 25 October 2017 at 06:54:54 UTC, Andrea
>>>>>> Fontana wrote:
>>>>>>>
>>>>>>> Provided link redirect me to github releases page. But
>>>>>>> there's no arm binaries available.
>>>>>>
>>>>>> Only a couple ldc devs have linux/ARM boards and they're
>>>>>> not usually able to provide a build.
>>>>>
>>>>> QEMU can emulate armhf, you don't need a board, i guess.
>>>>> By the way on aliexpress an orangepi costs 6.99$ and run
>>>>> linux on arm.
>>>>
>>>> Great! So can I write you down as the person who uploads the
>>>> ARM binaries upon beta/release? ;-) ;P
>>>>
>>>> - Johan
>>>
>>> I own a Raspberry Pi 3. If somebody walks me through the
>>> necessary steps, I'd be willing to provide binaries for ARMv7.
>>
>> Another option would be to cross-compile the native linux/ARM
>> ldc with a bootstrap ldc cross-compiler for linux/x64, as I
>> did with the Android/ARM package I setup for the Termux
>> Android app:
>>
>> https://github.com/termux/termux-packages/tree/master/packages/ldc
>>
>> That works well for me with Android/ARM, might work for
>> linux/ARM too.
>
> Yeah that's probably what we should be looking into.
>
> I gave QEMU a try (in my Linux VirtualBox ;)); after 26 hours
> of building (!), I finally have a LLVM 5.0.0. For other
> interested guys: I can recommend following
> https://translatedcode.wordpress.com/2016/11/03/installing-debian-on-qemus-32-bit-arm-virt-board/. I gave it 2 gigs of memory and 3 CPU cores (but QEMU itself seems to use only a single CPU host core).
Follow-up: LDC 1.5 comes with an ARMv6 hard-float package for
Linux again:
https://github.com/ldc-developers/ldc/releases/tag/v1.5.0
It was built on Debian Jessie with gcc 4.9 and includes
static/shared runtime libs, the LTO linker plugin and
dub/rdmd/dustmite/ddemangle, that's why it's not exactly tiny.
For reference, building LDC in QEMU takes about 3 hours on my
machine.
To spare others a few hours, I also uploaded the prebuilt LLVM
5.0.0 (without LLD):
https://github.com/ldc-developers/llvm/releases/tag/ldc-v5.0.0
It was built with CMake variable
LLVM_DEFAULT_TARGET_TRIPLE=arm-none-linux-gnueabihf in order to
emit ARMv6 code by default, just like Debian's gcc. See
https://github.com/ldc-developers/ldc/issues/1988 for context.
More information about the digitalmars-d-ldc
mailing list