Jump to page: 1 2
Thread overview
D support for ChromeOS
Feb 03, 2018
Daniel Kozak
Feb 03, 2018
bachmeier
Aug 21, 2018
Emil
Aug 22, 2018
Joakim
Aug 22, 2018
Joakim
Aug 22, 2018
Joakim
Aug 22, 2018
Joakim
Aug 28, 2018
Joakim
February 03, 2018
Today I have added basic support for D language (ldc and dub) to chromebrew: https://github.com/skycocker/chromebrew/pull/1717

So if you have ChromeBook with Chrome OS (developer mode is needed for chromebrew), you can try it, if everything works ok for you.
February 03, 2018
On Saturday, 3 February 2018 at 18:11:15 UTC, Daniel Kozak wrote:
> Today I have added basic support for D language (ldc and dub) to chromebrew: https://github.com/skycocker/chromebrew/pull/1717
>
> So if you have ChromeBook with Chrome OS (developer mode is needed for chromebrew), you can try it, if everything works ok for you.

Thanks for this. I've got a chromebook and will try it out. Crouton has been less than impressive. Never heard of chromebrew before.
August 21, 2018
On Saturday, 3 February 2018 at 18:11:15 UTC, Daniel Kozak wrote:
> Today I have added basic support for D language (ldc and dub) to chromebrew: https://github.com/skycocker/chromebrew/pull/1717
>
> So if you have ChromeBook with Chrome OS (developer mode is needed for chromebrew), you can try it, if everything works ok for you.

Tried it on an Acer Chromebook R13 running Version 69.0.3497.35 (Official Build) dev (32-bit). I have no previous experience with llvm.

dub init ran fine.

getting this error when trying to run dub in the newly created project
chronos@localhost ~/work/my_test $ dub
Failed to invoke the compiler /usr/local/bin/ldc2 to determine the build platform: /usr/local/bin/ldc2: error while loading shared libraries: libLLVMLTO.so.5: cannot open shared object file: No such file or directory

when running ldc2

chronos@localhost ~/work/my_test $ ldc2
ldc2: error while loading shared libraries: libLLVMLTO.so.5: cannot open shared object file: No such file or directory


I do have another version installed though:

chronos@localhost ~/work/my_test $ locate libLLVMLTO
/mnt/stateful_partition/dev_image/lib/libLLVMLTO.so
/mnt/stateful_partition/dev_image/lib/libLLVMLTO.so.6
/mnt/stateful_partition/dev_image/lib/libLLVMLTO.so.6.0.0
/usr/local/lib/libLLVMLTO.so
/usr/local/lib/libLLVMLTO.so.6
/usr/local/lib/libLLVMLTO.so.6.0.0


trying to build ldc:

chronos@localhost ~/work/my_test $ crew build ldc
(i) ldc: D language compiler using LLVM.
https://github.com/ldc-developers/ldc
version 1.7.0
Downloading source...
Archive downloaded
Unpacking archive, this may take awhile...
Building from source, this may take a while...
Rename all *.la files to *.la_tmp
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   610    0   610    0     0    742      0 --:--:-- --:--:-- --:--:--   778
100 4888k  100 4888k    0     0   437k      0  0:00:11  0:00:11 --:--:--  749k
cmake: /usr/lib/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by cmake)
cmake: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by cmake)
cmake: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by cmake)
ldc failed to build: `cmake -Bbuild/ldc-0.17.5-src -Hbuild/ldc-0.17.5-src` exited with 1


chronos@localhost ~/work/my_test $ uname -a
Linux localhost 3.18.0-18117-g8dfac4fe62f3 #1 SMP PREEMPT Fri Aug 10 09:50:22 PDT 2018 aarch64 ARMv8 Processor rev 2 (v8l) GNU/Linux


chronos@localhost ~/work/my_test $ cat /proc/cpuinfo
processor       : 0
model name      : ARMv8 Processor rev 2 (v8l)
Features        : fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer : 0x41
CPU architecture: 8
CPU variant     : 0x0
CPU part        : 0xd03
CPU revision    : 2


August 22, 2018
On Tuesday, 21 August 2018 at 20:29:34 UTC, Emil wrote:
> On Saturday, 3 February 2018 at 18:11:15 UTC, Daniel Kozak wrote:
>> [...]
>
> Tried it on an Acer Chromebook R13 running Version 69.0.3497.35 (Official Build) dev (32-bit). I have no previous experience with llvm.
>
> [...]

Looks like your Chromebook's got a MediaTek AArch64 processor, ie 64-bit ARM, which wasn't supported by D until the just released LDC 1.11. I'd try building 1.11 from source, using these instructions:

https://wiki.dlang.org/Building_LDC_from_source

You will need a working CMake though, looks like the one you're trying to use isn't running.
August 22, 2018
On Wednesday, 22 August 2018 at 01:48:01 UTC, Joakim wrote:
> On Tuesday, 21 August 2018 at 20:29:34 UTC, Emil wrote:
>> On Saturday, 3 February 2018 at 18:11:15 UTC, Daniel Kozak wrote:
>>> [...]
>>
>> Tried it on an Acer Chromebook R13 running Version 69.0.3497.35 (Official Build) dev (32-bit). I have no previous experience with llvm.
>>
>> [...]
>
> Looks like your Chromebook's got a MediaTek AArch64 processor, ie 64-bit ARM, which wasn't supported by D until the just released LDC 1.11. I'd try building 1.11 from source, using these instructions:
>
> https://wiki.dlang.org/Building_LDC_from_source
>
> You will need a working CMake though, looks like the one you're trying to use isn't running.

Oh, I forgot, if you're running Android apps in your Chromebook, you can install the Termux app and use LDC through there:

https://play.google.com/store/apps/details?id=com.termux&hl=en

The first AArch64 build of LDC for Termux should be up in a day or so, `apt install ldc`, or you can build it from source in Termux, if you can't wait. ;)
August 22, 2018
On Wednesday, 22 August 2018 at 01:56:45 UTC, Joakim wrote:
unning.
[...]
>
> Oh, I forgot, if you're running Android apps in your Chromebook, you can install the Termux app and use LDC through there:
>
> https://play.google.com/store/apps/details?id=com.termux&hl=en
>
> The first AArch64 build of LDC for Termux should be up in a day or so, `apt install ldc`, or you can build it from source in Termux, if you can't wait. ;)
+1 ; Cool, not sure if I can wait, but probably I will :-)

August 22, 2018
On Wednesday, 22 August 2018 at 07:14:22 UTC, Martin Tschierschke wrote:
> On Wednesday, 22 August 2018 at 01:56:45 UTC, Joakim wrote:
> unning.
> [...]
>>
>> Oh, I forgot, if you're running Android apps in your Chromebook, you can install the Termux app and use LDC through there:
>>
>> https://play.google.com/store/apps/details?id=com.termux&hl=en
>>
>> The first AArch64 build of LDC for Termux should be up in a day or so, `apt install ldc`, or you can build it from source in Termux, if you can't wait. ;)
> +1 ; Cool, not sure if I can wait, but probably I will :-)

I must say I really like looking at this version string, straight from the Termux app:

$ ldc2 --version
LDC - the LLVM D compiler (1.11.0):
  based on DMD v2.081.2 and LLVM 6.0.1-2

  built with LDC - the LLVM D compiler (1.11.0)
  Default target: aarch64--linux-android
  Host CPU: cortex-a73
  http://dlang.org - http://wiki.dlang.org/LDC

  Registered Targets:
    aarch64    - AArch64 (little endian)
    aarch64_be - AArch64 (big endian)
    arm        - ARM
    arm64      - ARM64 (little endian)
    armeb      - ARM (big endian)
    thumb      - Thumb
    thumbeb    - Thumb (big endian)
    x86        - 32-bit X86: Pentium-Pro and above
    x86-64     - 64-bit X86: EM64T and AMD64
August 22, 2018
On Wednesday, 22 August 2018 at 10:06:39 UTC, Joakim wrote:
> On Wednesday, 22 August 2018 at 07:14:22 UTC, Martin Tschierschke wrote:
>> On Wednesday, 22 August 2018 at 01:56:45 UTC, Joakim wrote:
>> unning.
>> [...]
>>>
>>> Oh, I forgot, if you're running Android apps in your Chromebook, you can install the Termux app and use LDC through there:
>>>
>>> https://play.google.com/store/apps/details?id=com.termux&hl=en
>>>
>>> The first AArch64 build of LDC for Termux should be up in a day or so, `apt install ldc`, or you can build it from source in Termux, if you can't wait. ;)
>> +1 ; Cool, not sure if I can wait, but probably I will :-)
>
> I must say I really like looking at this version string, straight from the Termux app:
>
> $ ldc2 --version
> LDC - the LLVM D compiler (1.11.0):
>   based on DMD v2.081.2 and LLVM 6.0.1-2
>
>   built with LDC - the LLVM D compiler (1.11.0)
>   Default target: aarch64--linux-android
>   Host CPU: cortex-a73
>   http://dlang.org - http://wiki.dlang.org/LDC
>
>   Registered Targets:
>     aarch64    - AArch64 (little endian)
>     aarch64_be - AArch64 (big endian)
>     arm        - ARM
>     arm64      - ARM64 (little endian)
>     armeb      - ARM (big endian)
>     thumb      - Thumb
>     thumbeb    - Thumb (big endian)
>     x86        - 32-bit X86: Pentium-Pro and above
>     x86-64     - 64-bit X86: EM64T and AMD64

It's up:

$ apt search ldc
Sorting... Done
Full Text Search... Done
ipcalc/stable 0.41 aarch64
  Calculates IP broadcast, network, Cisco wildcard mask, and host ranges

ldc/stable 1.11.0 aarch64
  D programming language compiler, built with LLVM

http://termux.net/dists/stable/main/binary-aarch64/
August 22, 2018
On Wednesday, 22 August 2018 at 10:28:32 UTC, Joakim wrote:

>
> It's up:
>
> $ apt search ldc
> Sorting... Done
> Full Text Search... Done
> ipcalc/stable 0.41 aarch64
>   Calculates IP broadcast, network, Cisco wildcard mask, and host ranges
>
> ldc/stable 1.11.0 aarch64
>   D programming language compiler, built with LLVM
>
> http://termux.net/dists/stable/main/binary-aarch64/

It is downloading now at 37 % :-), Thank you!


August 28, 2018
On Wednesday, 22 August 2018 at 10:28:32 UTC, Joakim wrote:
>>>> https://play.google.com/store/apps/details?id=com.termux&hl=en

> $ apt search ldc
> Sorting... Done
> Full Text Search... Done
> ipcalc/stable 0.41 aarch64
>   Calculates IP broadcast, network, Cisco wildcard mask, and host ranges
>
> ldc/stable 1.11.0 aarch64
>   D programming language compiler, built with LLVM
>
> http://termux.net/dists/stable/main/binary-aarch64/
You should post it, as an extra topic on announce:
  D on Android with Termux LDC now 32 and 64 Bit!
  ...

Thank you - it works!




« First   ‹ Prev
1 2