DMD, LDC, and GDC compilers and 32/64 bit

Eugene Wissner via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Sun Jun 18 10:59:11 PDT 2017


On Sunday, 18 June 2017 at 17:57:28 UTC, Eugene Wissner wrote:
> On Sunday, 18 June 2017 at 16:08:36 UTC, Russel Winder wrote:
>> I believe DMD, LDC, and GDC all have the -m32 or -m64 option 
>> to determine the word size of compiled object and executable.
>>
>> I also believe there are 32-bit and 64-bit builds of the three 
>> compilers. Or are there?
>>
>> It appears at some time in the past that some of the compilers 
>> when compiled as 32-bit executables, could not generate 64-bit 
>> objects and executables as they did not understand the -m64 
>> option, it was not compiled in.
>>
>> I am asking this as I cannot test to get experimental data, 
>> but I need to fix a long standing removal of a test in the 
>> SCons D test suite.
>>
>> Is there a way to determine the bitsize of the compiler 
>> executable, in the test it is assumed that if the OS is 32-bit 
>> then so are the D compilers.
>
> On linux "file" gives you such information about an executable.

Sample output on Slackware (multilib distros like ubuntu/debian 
are different):

belka[19:55]:~$ file /usr/bin/gcc-5.3.0
/usr/bin/gcc-5.3.0: ELF 64-bit LSB executable, x86-64, version 1 
(SYSV), dynamically linked, interpreter 
/lib64/ld-linux-x86-64.so.2, stripped


More information about the Digitalmars-d-learn mailing list