July 26, 2012 Re: [dmd-beta] D 1.075 and 2.060 betas | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On 7/24/12, Walter Bright <walter@digitalmars.com> wrote: > http://ftp.digitalmars.com/dmd2beta.zip Found a linker bug for 2.060. Compiling with -c on a module-by-module basis creates linking errors and a linker crash. Test-case for a Win32 machine: $ git clone https://github.com/AndrejMitrovic/WindowsAPI.git Open the WindowsAPI folder and paste this D script: module build; import std.array; import std.conv; import std.stdio; import std.parallelism; import std.file; import std.path; import std.process; import std.string; alias std.string.join join; void main() { string[] objFiles; string[] entries; foreach (string entry; dirEntries(r"win32", SpanMode.shallow)) entries ~= entry; // .array won't work.., to!string[] won't work.. foreach (string entry; parallel(entries, 1)) { string objFile = entry.stripExtension.setExtension(".obj"); objFiles ~= objFile; string cmd = format("dmd -c -version=Unicode -version=WindowsXP %s -of%s", entry, objFile); system(cmd); } system("echo void main() { } > test.d"); string cmd = format("dmd test.d -version=Unicode -version=WindowsXP %s", objFiles.join(" ")); system(cmd); } Run it: $ rdmd build.d This is what I get: Error 32: Data Outside Segment Bounds : _DATA win32\mmsystem.obj(mmsystem) Error 32: Data Outside Segment Bounds : _DATA win32\mmsystem.obj(mmsystem) Error 32: Data Outside Segment Bounds : _DATA win32\mmsystem.obj(mmsystem) Error 32: Data Outside Segment Bounds : _DATA win32\mmsystem.obj(mmsystem) Error 32: Data Outside Segment Bounds : _DATA and a crash: --------------------------- Unexpected OPTLINK Termination at EIP=00402C6C --------------------------- EAX=017C0000 EBX=004C22F8 ECX=00000004 EDX=0001FFFF ESI=010524DC EDI=00003FF8 EBP=0012FFF0 ESP=0012FF84 First=00402000 The script works fine with 2.059. _______________________________________________ dmd-beta mailing list dmd-beta@puremagic.com http://lists.puremagic.com/mailman/listinfo/dmd-beta |
July 26, 2012 Re: [dmd-beta] D 1.075 and 2.060 betas | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrej Mitrovic | On 7/26/12, Andrej Mitrovic <andrej.mitrovich@gmail.com> wrote: > On 7/24/12, Walter Bright <walter@digitalmars.com> wrote: >> http://ftp.digitalmars.com/dmd2beta.zip > > Found a linker bug for 2.060. Sorry, should have put in Bugzilla not in forum: http://d.puremagic.com/issues/show_bug.cgi?id=8443 _______________________________________________ dmd-beta mailing list dmd-beta@puremagic.com http://lists.puremagic.com/mailman/listinfo/dmd-beta |
July 27, 2012 Re: [dmd-beta] D 1.075 and 2.060 betas | ||||
---|---|---|---|---|
| ||||
Posted in reply to David Simcha | On Tue, 24 Jul 2012 20:21:48 +0200, David Simcha <dsimcha@gmail.com> wrote: > The more I think about it the more I think we need a tool for automatically > checking out and building the latest releases of DMD/druntime/Phobos that's: > > 1. Easy to use. > > 2. Well-documented. > > 3. Cross-platform. > > 4. Configurability/not hard-coding everything. > > I don't know how many times I've put off creating pull requests for > relatively minor improvements to Phobos because of the hassle of either > writing such a tool myself (I've written a quick/dirty/ad-hoc one just for > myself but it really sucks in almost all attributes mentioned) or manually > updating everything before I could get started. > https://github.com/D-Programming-Language/tools/blob/master/update.sh _______________________________________________ dmd-beta mailing list dmd-beta@puremagic.com http://lists.puremagic.com/mailman/listinfo/dmd-beta |
July 27, 2012 Re: [dmd-beta] D 1.075 and 2.060 betas | ||||
---|---|---|---|---|
| ||||
Posted in reply to Martin Nowak | On 27 jul 2012, at 02:18, Martin Nowak <dawg@dawgfoto.de> wrote: > https://github.com/D-Programming-Language/tools/blob/master/update.sh Since when are shell scripts cross platform? -- /Jacob Carlborg _______________________________________________ dmd-beta mailing list dmd-beta@puremagic.com http://lists.puremagic.com/mailman/listinfo/dmd-beta |
July 27, 2012 Re: [dmd-beta] D 1.075 and 2.060 betas | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jacob Carlborg | On Fri, Jul 27, 2012 at 7:44 AM, Jacob Carlborg <doob@me.com> wrote: > On 27 jul 2012, at 02:18, Martin Nowak <dawg@dawgfoto.de> wrote: > >> https://github.com/D-Programming-Language/tools/blob/master/update.sh > > Since when are shell scripts cross platform? > > -- > /Jacob Carlborg > _______________________________________________ > dmd-beta mailing list > dmd-beta@puremagic.com > http://lists.puremagic.com/mailman/listinfo/dmd-beta Since always? I mean, nobody actually uses cmd.exe on Windows, do they? It's literally the only platform without a shell installed by default, and even then, getting a shell via MinGW or Cygwin is trivial. Regards, Alex _______________________________________________ dmd-beta mailing list dmd-beta@puremagic.com http://lists.puremagic.com/mailman/listinfo/dmd-beta |
July 27, 2012 Re: [dmd-beta] D 1.075 and 2.060 betas | ||||
---|---|---|---|---|
| ||||
Posted in reply to Alex Rønne Petersen Attachments:
| On Jul 27, 2012, at 08:54 AM, Alex Rønne Petersen <xtzgzorex@gmail.com> wrote: > Since always? I mean, nobody actually uses cmd.exe on Windows, do they? First, shell scripts are not portable. You have to be very careful which language constructs you choose to use. It's very easy you suddenly use a language construct that is an extension only available in a particular shell. > It's literally the only platform without a shell installed by default, and even then, getting a shell via MinGW or Cygwin is trivial. I don't agree. I wouldn't want to ask my users of an application/tool to have to install MinGW or Cygwin. Preferably the shouldn't have to install anything. That basically means native code. -- /Jacob Carlborg |
July 27, 2012 Re: [dmd-beta] D 1.075 and 2.060 betas | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jacob Carlborg | On Fri, Jul 27, 2012 at 9:04 AM, Jacob Carlborg <doob@me.com> wrote: > On Jul 27, 2012, at 08:54 AM, Alex Rønne Petersen <xtzgzorex@gmail.com> wrote: > > Since always? I mean, nobody actually uses cmd.exe on Windows, do they? > > > First, shell scripts are not portable. You have to be very careful which language constructs you choose to use. It's very easy you suddenly use a language construct that is an extension only available in a particular shell. Then I think you mean those extensions aren't portable. :) Also, the script is written for zsh which is fully compatible with bash, which is available practically everywhere. It's not just a generic sh script, but is still portable enough by being written for bash. > > > It's literally the only platform without a shell installed by default, and even then, getting a shell via MinGW or Cygwin is trivial. > > > I don't agree. I wouldn't want to ask my users of an application/tool to have to install MinGW or Cygwin. Preferably the shouldn't have to install anything. That basically means native code. This is a script for use by developers, not by end users. Can you honestly develop on Windows without MinGW/Cygwin? I wouldn't even bother with the platform if it wasn't for those two. > > -- > /Jacob Carlborg > > _______________________________________________ > dmd-beta mailing list > dmd-beta@puremagic.com > http://lists.puremagic.com/mailman/listinfo/dmd-beta Regards, Alex _______________________________________________ dmd-beta mailing list dmd-beta@puremagic.com http://lists.puremagic.com/mailman/listinfo/dmd-beta |
July 27, 2012 Re: [dmd-beta] D 1.075 and 2.060 betas | ||||
---|---|---|---|---|
| ||||
Posted in reply to Alex Rønne Petersen | On 27-Jul-12 12:48, Alex Rønne Petersen wrote: > On Fri, Jul 27, 2012 at 9:04 AM, Jacob Carlborg <doob@me.com> wrote: >> On Jul 27, 2012, at 08:54 AM, Alex Rønne Petersen <xtzgzorex@gmail.com> >> wrote: >> >> Since always? I mean, nobody actually uses cmd.exe on Windows, do they? >> >> >> First, shell scripts are not portable. You have to be very careful which >> language constructs you choose to use. It's very easy you suddenly use a >> language construct that is an extension only available in a particular >> shell. > Then I think you mean those extensions aren't portable. :) > > Also, the script is written for zsh which is fully compatible with > bash, which is available practically everywhere. Nope. But say D script would indeed run on all interesting platforms. >> >> It's literally the only platform without a shell installed by default, >> and even then, getting a shell via MinGW or Cygwin is trivial. >> >> >> I don't agree. I wouldn't want to ask my users of an application/tool to >> have to install MinGW or Cygwin. Preferably the shouldn't have to install >> anything. That basically means native code. > This is a script for use by developers, not by end users. Can you > honestly develop on Windows without MinGW/Cygwin I can and in fact do. Personally, I find shell scripts durty & unreliable. Quick & dirty is the first thing that comes to mind when I think shell scrip. Yeah you may use them to do `this thing` on *NIX, but proposing them as portable tool - just meh. -- Dmitry Olshansky _______________________________________________ dmd-beta mailing list dmd-beta@puremagic.com http://lists.puremagic.com/mailman/listinfo/dmd-beta |
July 27, 2012 Re: [dmd-beta] D 1.075 and 2.060 betas | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jacob Carlborg | On 27 July 2012 09:04, Jacob Carlborg <doob@me.com> wrote: > On Jul 27, 2012, at 08:54 AM, Alex Rønne Petersen <xtzgzorex@gmail.com> wrote: > > Since always? I mean, nobody actually uses cmd.exe on Windows, do they? > > > First, shell scripts are not portable. You have to be very careful which language constructs you choose to use. It's very easy you suddenly use a language construct that is an extension only available in a particular shell. > > > It's literally the only platform without a shell installed by default, and even then, getting a shell via MinGW or Cygwin is trivial. > > > I don't agree. I wouldn't want to ask my users of an application/tool to have to install MinGW or Cygwin. Preferably the shouldn't have to install anything. That basically means native code. It's easy to download it, but integrating it into your system can go pretty badly wrong. For example, if you end up with gnu make installed, you need to make sure it never gets called instead of Windows make. Oh the fun you can have if you end up with both MinGW and Cygwin installed... Windows still has nearly 90% market share. it's not acceptable to treat it as a second class citizen, especially on something as trivial as this. Seriously, we want to remove every possible to barrier to participation. _______________________________________________ dmd-beta mailing list dmd-beta@puremagic.com http://lists.puremagic.com/mailman/listinfo/dmd-beta |
July 27, 2012 Re: [dmd-beta] D 1.075 and 2.060 betas | ||||
---|---|---|---|---|
| ||||
Posted in reply to Dmitry Olshansky | On Fri, Jul 27, 2012 at 10:59 AM, Dmitry Olshansky <dmitry.olsh@gmail.com> wrote: > On 27-Jul-12 12:48, Alex Rønne Petersen wrote: >> >> On Fri, Jul 27, 2012 at 9:04 AM, Jacob Carlborg <doob@me.com> wrote: >>> >>> On Jul 27, 2012, at 08:54 AM, Alex Rønne Petersen <xtzgzorex@gmail.com> wrote: >>> >>> Since always? I mean, nobody actually uses cmd.exe on Windows, do they? >>> >>> >>> First, shell scripts are not portable. You have to be very careful which language constructs you choose to use. It's very easy you suddenly use a language construct that is an extension only available in a particular shell. >> >> Then I think you mean those extensions aren't portable. :) >> >> Also, the script is written for zsh which is fully compatible with bash, which is available practically everywhere. > > Nope. But say D script would indeed run on all interesting platforms. "Nope" is not a very convincing argument. :) D is most certainly *not* available on all interesting platforms yet, unless x86 is the only interesting platform to you... > > >>> >>> It's literally the only platform without a shell installed by default, and even then, getting a shell via MinGW or Cygwin is trivial. >>> >>> >>> I don't agree. I wouldn't want to ask my users of an application/tool to have to install MinGW or Cygwin. Preferably the shouldn't have to install anything. That basically means native code. >> >> This is a script for use by developers, not by end users. Can you honestly develop on Windows without MinGW/Cygwin > > I can and in fact do. Personally, I find shell scripts durty & unreliable. Quick & dirty is the first thing that comes to mind when I think shell scrip. Yeah you may use them to do `this thing` on *NIX, but proposing them as portable tool - just meh. They are more portable than D 'scripts'. > > -- > Dmitry Olshansky > > > _______________________________________________ > dmd-beta mailing list > dmd-beta@puremagic.com > http://lists.puremagic.com/mailman/listinfo/dmd-beta Regards, Alex _______________________________________________ dmd-beta mailing list dmd-beta@puremagic.com http://lists.puremagic.com/mailman/listinfo/dmd-beta |
Copyright © 1999-2021 by the D Language Foundation