Re: COFF on Win32 how to try?
On 10.10.2014 20:44, Szymon Gatner wrote: Hi, thanks for all the information. I got Digger (pretty nice tool btw) and it pulled all neccessary repos from GitHub. As my understanding is that I should not be doing Build with Diggger I just opened Windows console, entered druntime dir and typed: You have to build dmd, so it should be good starting point to succeed in building the full chain for win64: dmd, druntime and win64. d:\digger-1.0\repo\druntimemake -f win64.mak MODEL=32mscoff CC=\%VCINSTALLDIR %\bin\cl.exe\ and got: dmd -c -o- -Isrc -Iimport -Hfimport\core\sync\barrier.di src\core\sync\barrier.d src\core\stdc\stdio.d(859): Error: found 'nothrow' when expecting '{' Ahh, I thought it would use a compiled dmd by default. You will have to specify the path to dmd too: make -f win64.mak MODEL=32mscoff CC=\%VCINSTALLDIR%\bin\cl.exe\ DMD=../result/bin/dmd The given dmd path is specific to building with digger (the normal path is ../dmd/src/dmd). You'll have to update sc.ini there, too.
Re: COFF on Win32 how to try?
On Saturday, 11 October 2014 at 09:21:18 UTC, Rainer Schuetze wrote: On 10.10.2014 20:44, Szymon Gatner wrote: Hi, thanks for all the information. I got Digger (pretty nice tool btw) and it pulled all neccessary repos from GitHub. As my understanding is that I should not be doing Build with Diggger I just opened Windows console, entered druntime dir and typed: You have to build dmd, so it should be good starting point to succeed in building the full chain for win64: dmd, druntime and win64. You mean for Win32? Beacause that is what I am after. d:\digger-1.0\repo\druntimemake -f win64.mak MODEL=32mscoff CC=\%VCINSTALLDIR %\bin\cl.exe\ and got: dmd -c -o- -Isrc -Iimport -Hfimport\core\sync\barrier.di src\core\sync\barrier.d src\core\stdc\stdio.d(859): Error: found 'nothrow' when expecting '{' Ahh, I thought it would use a compiled dmd by default. You will have to specify the path to dmd too: make -f win64.mak MODEL=32mscoff CC=\%VCINSTALLDIR%\bin\cl.exe\ DMD=../result/bin/dmd The given dmd path is specific to building with digger (the normal path is ../dmd/src/dmd). You'll have to update sc.ini there, too. So to build HEAD druntime and Phobos I also need HEAD DMD, correct? Installation of 2.066 I have now is not sufficent?
Re: COFF on Win32 how to try?
On Saturday, 11 October 2014 at 10:12:47 UTC, Szymon Gatner wrote: On Saturday, 11 October 2014 at 09:21:18 UTC, Rainer Schuetze wrote: On 10.10.2014 20:44, Szymon Gatner wrote: Hi, thanks for all the information. I got Digger (pretty nice tool btw) and it pulled all neccessary repos from GitHub. As my understanding is that I should not be doing Build with Diggger I just opened Windows console, entered druntime dir and typed: You have to build dmd, so it should be good starting point to succeed in building the full chain for win64: dmd, druntime and win64. You mean for Win32? Beacause that is what I am after. d:\digger-1.0\repo\druntimemake -f win64.mak MODEL=32mscoff CC=\%VCINSTALLDIR %\bin\cl.exe\ and got: dmd -c -o- -Isrc -Iimport -Hfimport\core\sync\barrier.di src\core\sync\barrier.d src\core\stdc\stdio.d(859): Error: found 'nothrow' when expecting '{' Ahh, I thought it would use a compiled dmd by default. You will have to specify the path to dmd too: make -f win64.mak MODEL=32mscoff CC=\%VCINSTALLDIR%\bin\cl.exe\ DMD=../result/bin/dmd The given dmd path is specific to building with digger (the normal path is ../dmd/src/dmd). You'll have to update sc.ini there, too. So to build HEAD druntime and Phobos I also need HEAD DMD, correct? Installation of 2.066 I have now is not sufficent? sounds good
Re: COFF on Win32 how to try?
On 11.10.2014 12:12, Szymon Gatner wrote: On Saturday, 11 October 2014 at 09:21:18 UTC, Rainer Schuetze wrote: On 10.10.2014 20:44, Szymon Gatner wrote: Hi, thanks for all the information. I got Digger (pretty nice tool btw) and it pulled all neccessary repos from GitHub. As my understanding is that I should not be doing Build with Diggger I just opened Windows console, entered druntime dir and typed: You have to build dmd, so it should be good starting point to succeed in building the full chain for win64: dmd, druntime and win64. You mean for Win32? Beacause that is what I am after. I meant Win64, because the tool chain is very much the same as for win32mscoff (MS compiler and linker and C runtime). Win32 means dmc and optlink. That's also why the win64.mak makefiles are abused for win32mscoff. d:\digger-1.0\repo\druntimemake -f win64.mak MODEL=32mscoff CC=\%VCINSTALLDIR %\bin\cl.exe\ and got: dmd -c -o- -Isrc -Iimport -Hfimport\core\sync\barrier.di src\core\sync\barrier.d src\core\stdc\stdio.d(859): Error: found 'nothrow' when expecting '{' Ahh, I thought it would use a compiled dmd by default. You will have to specify the path to dmd too: make -f win64.mak MODEL=32mscoff CC=\%VCINSTALLDIR%\bin\cl.exe\ DMD=../result/bin/dmd The given dmd path is specific to building with digger (the normal path is ../dmd/src/dmd). You'll have to update sc.ini there, too. So to build HEAD druntime and Phobos I also need HEAD DMD, correct? Installation of 2.066 I have now is not sufficent? Yes, DMD git HEAD is required.
Re: Building a dmd that works on old systems: TLS problems with libc
On Friday, 3 October 2014 at 14:21:02 UTC, Atila Neves wrote: Then I tried only using dmd to compile and linking it myself. That worked, but the resulting binary crashed. After loading it up in gdb, it crashed in __tls_get_addr My guess would be that your system doesn't have __tls_get_addr, which is unique in that it is provided by the runtime linker from glibc. You may want to try out my Android patch for dmd, which doesn't use native TLS and doesn't rely on that function either: http://164.138.25.188/dmd/packed_tls_for_elf.patch You'll want to get rid of that last change to mars.c, substitute rt/sections_android.d for rt/sections_linux.d in druntime (don't forget to change the version (Android): inside that file to version (linux): also), and make sure you're using the default ld.bfd linker and not the gold linker. That might work for you. On Thursday, 9 October 2014 at 17:30:04 UTC, Kevin Lamonte wrote: I am experiencing a similar problem trying to build a static executable, exactly as described in https://issues.dlang.org/show_bug.cgi?id=12268 . I don't know if the root cause is a gcc issue or a phobos issue. Probably neither, probably a druntime issue, specifically the rt.sections_linux module's use of the __tls_get_addr function, which is called from the dynamic linker at runtime.
Re: ini library in OSX
On Thursday, 11 September 2014 at 10:49:48 UTC, Robert burner Schadek wrote: some self promo: http://code.dlang.org/packages/inifiled I would like an example?
[yajl-d] hello world with json arrays
Disclaimer: Don't eat me. I was just wondering to those who are experienced in using yajl-d to show me the proper implementation of using it with arrays. So far this is what I understand from parsing Json Objects: class random{ private string foo; private string bar; } void main(string [] args){ random rand = decode!random(to!string(read(json_file.json))); //do stuff Now I'm just wondering how can I implement it with Json arrays. Just some information or a place to start with is all I ask. Thank you.