digitalmars.D - Phobos' Windows Makefile
- Eduard Staniloiu (16/16) Oct 11 2017 Hello,
- Jacob Carlborg (6/18) Oct 12 2017 It's faster to compile when passing multiple files to the compiler at
- Eduard Staniloiu (6/23) Oct 12 2017 I'm not convinced it's faster, as making a change in one of the
- Jacob Carlborg (5/8) Oct 12 2017 This is for full builds. And since DMD is so fast, it's very easy to
Hello, I've hit the following problem on this PR [0]: The Windows 32bit build fails with the error: "more than 32767 symbols in object file" [1]. After taking a look in `win32.mak`, I've seen that we are bundling multiple source files into a single object (which is the issue here), instead of compiling each source file into it's corresponding object and then linking the objects together. Is there a reason behind doing so, or should we rewrite the Windows makefiles? Looking forward to your answers! :) Cheers, Eduard [0] - https://github.com/dlang/phobos/pull/5331 [1] - https://auto-tester.puremagic.com/show-run.ghtml?projectid=1&runid=2826646&isPull=true
Oct 11 2017
On 2017-10-11 21:57, Eduard Staniloiu wrote:Hello, I've hit the following problem on this PR [0]: The Windows 32bit build fails with the error: "more than 32767 symbols in object file" [1]. After taking a look in `win32.mak`, I've seen that we are bundling multiple source files into a single object (which is the issue here), instead of compiling each source file into it's corresponding object and then linking the objects together. Is there a reason behind doing so, or should we rewrite the Windows makefiles?It's faster to compile when passing multiple files to the compiler at once. It doesn't have to run the compiler on the same files over and over again. -- /Jacob Carlborg
Oct 12 2017
On Thursday, 12 October 2017 at 07:17:15 UTC, Jacob Carlborg wrote:On 2017-10-11 21:57, Eduard Staniloiu wrote:I'm not convinced it's faster, as making a change in one of the bundled files will cause all the files in the object bundle to get recompiled, instead of compiling only the changed file and linking the objects.Hello, I've hit the following problem on this PR [0]: The Windows 32bit build fails with the error: "more than 32767 symbols in object file" [1]. After taking a look in `win32.mak`, I've seen that we are bundling multiple source files into a single object (which is the issue here), instead of compiling each source file into it's corresponding object and then linking the objects together. Is there a reason behind doing so, or should we rewrite the Windows makefiles?It's faster to compile when passing multiple files to the compiler at once. It doesn't have to run the compiler on the same files over and over again.
Oct 12 2017
On 2017-10-12 13:51, Eduard Staniloiu wrote:I'm not convinced it's faster, as making a change in one of the bundled files will cause all the files in the object bundle to get recompiled, instead of compiling only the changed file and linking the objects.This is for full builds. And since DMD is so fast, it's very easy to just throw all the source files at once at the compiler. -- /Jacob Carlborg
Oct 12 2017