digitalmars.D.learn - D on other platforms than Win,Lin,Mac?
- lurker57 (3/3) Sep 06 2011 Hi!
- Jacob Carlborg (6/9) Sep 06 2011 DMD currently only supports X86 and X86-64 platforms. I don't know about...
- Trass3r (3/8) Sep 06 2011 You'd have to use gdc or ldc and patch at least druntime.
- Nick Sabalausky (8/17) Sep 06 2011 For a language that aims at C/C++'s domain, it's extremely depressing th...
- Trass3r (4/9) Sep 06 2011 We have much bigger problems that need attention.
- bearophile (4/6) Sep 06 2011 In my opinion at the moment one of the highest priorities of D (maybe _t...
- Andrew Wiley (9/29) Sep 06 2011 The problem is that the most direct way to do this is to use a compiler
- Johannes Pfau (11/22) Sep 06 2011 At least for gdc only hello-world like code works. Real code hits this
- Trass3r (1/4) Sep 06 2011 Did you ever try with LDC?
- Johannes Pfau (4/8) Sep 07 2011 Not yet, but I'll try it as soon as possible.
- Andrew Wiley (9/30) Sep 06 2011 +1
- Johannes Pfau (8/47) Sep 07 2011 I only had a cheap ARM5TE till now, but yesterday my PandaBoard arrived
- Andrew Wiley (8/58) Sep 07 2011 Yes. That won't make our OS structs match up, but it should keep alignme...
Hi! I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux. Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?
Sep 06 2011
On 2011-09-06 16:21, lurker57 wrote:Hi! I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux. Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?DMD currently only supports X86 and X86-64 platforms. I don't know about ldc or gdc (the DMD front end on the LLVM and GCC backend). The backends support ARM but the runtime needs to support ARM as well. -- /Jacob Carlborg
Sep 06 2011
I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux. Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?You'd have to use gdc or ldc and patch at least druntime. Some people already managed to get stuff running on ARM but it's tricky. I think the GC is problematic, thus you also have to avoid most of phobos.
Sep 06 2011
"Trass3r" <un known.com> wrote in message news:op.v1edf3bj3ncmek enigma...For a language that aims at C/C++'s domain, it's extremely depressing that this is still the case. I *really* think this needs to be one of D's top ATM (Honestly, I've always cared about embedded/non-x86 processors *far* more than the native 64-bit support that got enormous attention awhile back). 'Course I'm kinda just blowing smoke out my ass since I unfortunately have neither the time nor ability to help tackle this goal :(I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux. Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?You'd have to use gdc or ldc and patch at least druntime. Some people already managed to get stuff running on ARM but it's tricky. I think the GC is problematic, thus you also have to avoid most of phobos.
Sep 06 2011
For a language that aims at C/C++'s domain, it's extremely depressing that this is still the case. I *really* think this needs to be one of D's top holeWe have much bigger problems that need attention. And there's nothing preventing the few people demanding ARM support from patching druntime etc. and creating a pull request to add it. The thing is that simply nobody wants to do the dirty base work.
Sep 06 2011
Nick Sabalausky:I *really* think this needs to be one of D's top priorities at this point.In my opinion at the moment one of the highest priorities of D (maybe _the_ top one) is to find a ways to improve and speed up the process of reviewing, fixing and applying pull requests for DMD/Phobos. Bye, bearophile
Sep 06 2011
On Tue, Sep 6, 2011 at 1:51 PM, Nick Sabalausky <a a.a> wrote:"Trass3r" <un known.com> wrote in message news:op.v1edf3bj3ncmek enigma...The problem is that the most direct way to do this is to use a compiler backend that isn't Digital Mars, and there's far fewer people working on other backends. This is why I asked whether anything had happened with GCC inclusion a while back. If that could happen, D would get a large leap forward in this area. I agree that a systems language that only works on x86/x86_64 is a depressing concept, and I think it's about to become unacceptable in the next few years.phobos. For a language that aims at C/C++'s domain, it's extremely depressing that this is still the case. I *really* think this needs to be one of D's top ATM (Honestly, I've always cared about embedded/non-x86 processors *far* more than the native 64-bit support that got enormous attention awhile back). 'Course I'm kinda just blowing smoke out my ass since I unfortunately have neither the time nor ability to help tackle this goal :(I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux. Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?You'd have to use gdc or ldc and patch at least druntime. Some people already managed to get stuff running on ARM but it's tricky. I think the GC is problematic, thus you also have to avoid most of
Sep 06 2011
Trass3r wrote:At least for gdc only hello-world like code works. Real code hits this issue: https://bitbucket.org/goshawk/gdc/issue/215/alignment-of-struct-members-wrong-on-arm This also applies to all platforms which aren't supported by dmd.I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux. Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?You'd have to use gdc or ldc and patch at least druntime. Some people already managed to get stuff running on ARM but it's tricky.I think the GC is problematic, thus you also have to avoid most of phobos.The GC seems to work if druntime is compiled with -fno-section-anchors , but no real testing was done. https://bitbucket.org/goshawk/gdc/issue/120/fsection-anchors-broken-on-arm might also be caused by bug 215. -- Johannes Pfau
Sep 06 2011
At least for gdc only hello-world like code works. Real code hits this issue: https://bitbucket.org/goshawk/gdc/issue/215/alignment-of-struct-members-wrong-on-armDid you ever try with LDC?
Sep 06 2011
Trass3r wrote:Not yet, but I'll try it as soon as possible. -- Johannes PfauAt least for gdc only hello-world like code works. Real code hits this issue: https://bitbucket.org/goshawk/gdc/issue/215/alignment-of-struct-members-wrong-on-armDid you ever try with LDC?
Sep 07 2011
On Tue, Sep 6, 2011 at 2:25 PM, Johannes Pfau <spam example.com> wrote:Trass3r wrote:+1 If you're looking at an ARMv7 platform (my Tegra is ARMv7, dunno if they all are), I believe you can set the Linux kernel to handle faults caused by unaligned memory accesses, which *should* make D run with a performance hit until this bug gets fixed. Keep in mind that the library situation is largely untested, although Iain seems to have quietly done a lot of work in Druntime at some point to make it all build. Once I've got my Tegra up and running (need a serial cable - it's in the mail), I'll be able to say more.At least for gdc only hello-world like code works. Real code hits this issue: https://bitbucket.org/goshawk/gdc/issue/215/alignment-of-struct-members-wrong-on-arm This also applies to all platforms which aren't supported by dmd.I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux. Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?You'd have to use gdc or ldc and patch at least druntime. Some people already managed to get stuff running on ARM but it's tricky.I think the GC is problematic, thus you also have to avoid most of phobos.The GC seems to work if druntime is compiled with -fno-section-anchors , but no real testing was done. https://bitbucket.org/goshawk/gdc/issue/120/fsection-anchors-broken-on-arm might also be caused by bug 215.
Sep 06 2011
Andrew Wiley wrote:On Tue, Sep 6, 2011 at 2:25 PM, Johannes Pfau <spam example.com> wrote:I only had a cheap ARM5TE till now, but yesterday my PandaBoard arrived (OMAP4 / Dual Core Cortex A9 / ARM7). But the SD Card I ordered is broken, I'm waiting for a replacement now. Anyway: Are you referring to this? http://www.mjmwired.net/kernel/Documentation/arm/mem_alignment -- Johannes PfauTrass3r wrote:+1 If you're looking at an ARMv7 platform (my Tegra is ARMv7, dunno if they all are), I believe you can set the Linux kernel to handle faults caused by unaligned memory accesses, which *should* make D run with a performance hit until this bug gets fixed. Keep in mind that the library situation is largely untested, although Iain seems to have quietly done a lot of work in Druntime at some point to make it all build. Once I've got my Tegra up and running (need a serial cable - it's in the mail), I'll be able to say more.At least for gdc only hello-world like code works. Real code hits this issue: https://bitbucket.org/goshawk/gdc/issue/215/alignment-of-struct-members-wrong-on-arm This also applies to all platforms which aren't supported by dmd.I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux. Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?You'd have to use gdc or ldc and patch at least druntime. Some people already managed to get stuff running on ARM but it's tricky.I think the GC is problematic, thus you also have to avoid most of phobos.The GC seems to work if druntime is compiled with -fno-section-anchors , but no real testing was done. https://bitbucket.org/goshawk/gdc/issue/120/fsection-anchors-broken-on-arm might also be caused by bug 215.
Sep 07 2011
On Wed, Sep 7, 2011 at 2:46 AM, Johannes Pfau <spam example.com> wrote:Andrew Wiley wrote:Yes. That won't make our OS structs match up, but it should keep alignment problems from crashing the program otherwise. Also, my experience with LDC was that it doesn't have the Druntime patches it needs, but I seem to recall adding enough to get it building, then watching LDC segfault. I think they're already fixing the alignments (though I'm not familiar enough with their source to be certain that's what I was seeing), but there seems to be some other issue.On Tue, Sep 6, 2011 at 2:25 PM, Johannes Pfau <spam example.com> wrote:https://bitbucket.org/goshawk/gdc/issue/215/alignment-of-struct-members-wrong-on-armTrass3r wrote:At least for gdc only hello-world like code works. Real code hits this issue:I've heard that our company is considering the T20 from Toradex.com for a new project with remote hardware. The platform runs on Nvidia Tegra and Linux. Since I have been very impressed by the D programming language, for some years now, could it be possible to use D in such projects?You'd have to use gdc or ldc and patch at least druntime. Some people already managed to get stuff running on ARM but it's tricky.https://bitbucket.org/goshawk/gdc/issue/120/fsection-anchors-broken-on-armThis also applies to all platforms which aren't supported by dmd.I think the GC is problematic, thus you also have to avoid most of phobos.The GC seems to work if druntime is compiled with -fno-section-anchors , but no real testing was done.I only had a cheap ARM5TE till now, but yesterday my PandaBoard arrived (OMAP4 / Dual Core Cortex A9 / ARM7). But the SD Card I ordered is broken, I'm waiting for a replacement now. Anyway: Are you referring to this? http://www.mjmwired.net/kernel/Documentation/arm/mem_alignmentmight also be caused by bug 215.+1 If you're looking at an ARMv7 platform (my Tegra is ARMv7, dunno if they all are), I believe you can set the Linux kernel to handle faults caused by unaligned memory accesses, which *should* make D run with a performance hit until this bug gets fixed. Keep in mind that the library situation is largely untested, although Iain seems to have quietly done a lot of work in Druntime at some point to make it all build. Once I've got my Tegra up and running (need a serial cable - it's in the mail), I'll be able to say more.
Sep 07 2011