On 15 October 2012 04:10, Gerry Weaver <ger...@compvia.com> wrote: > Hello All, > > I have been looking at D off and on for several years. Initially I worked > through a very painful experience to get D compiling on Linux. After that > experience, I concluded that I should wait for it to become more mature. > Since then, I do a very simple test. I install the latest package and try to > build "Hello World". I figure that if "Hello World" builds successfully, I > will continue further. I have just downloaded the latest .deb package and > installed it on Ubuntu 12.04 32bit. Once again it fails this incredibly > simple test. I've read many discussions about how/why, has/hasn't, > will/won't D hit the mainstream in programming languages. I think this > situation may offer at least one data point. I'm struggling to think of any > other language (and I use several) that won't build code out of the box. D > seems to have a lot of potential, but this needs to be fixed. I am not > asking for help on this. I honestly don't care what the solution is. I just > wanted the D developers to know why at least one developer is not using the > language. I sincerely hope that the situation will improve. I'm looking > forward to programming in D. > > Thanks for your time, > -G > > > > Here is the code: > > import std.stdio; > > > void main() > { > writeln("Hello, world!"); > } > > Here is the command: > > dmd hello.d > > Here is the output: > > /usr/lib/i386-linux-gnu/libphobos2.a(dmain2_459_1a5.o): In function > `_D2rt6dmain24mainUiPPaZi7runMainMFZv': > src/rt/dmain2.d:(.text._D2rt6dmain24mainUiPPaZi7runMainMFZv+0x10): undefined > reference to `_Dmain' > /usr/lib/i386-linux-gnu/libphobos2.a(thread_18f_1b8.o): In function > `_D4core6thread6Thread6__ctorMFZC4core6thread6Thread': > src/core/thread.d:(.text._D4core6thread6Thread6__ctorMFZC4core6thread6Thread+0x1d): > undefined reference to `_tlsend' > src/core/thread.d:(.text._D4core6thread6Thread6__ctorMFZC4core6thread6Thread+0x24): > undefined reference to `_tlsstart' > /usr/lib/i386-linux-gnu/libphobos2.a(thread_19f_6e4.o): In function > `thread_attachThis': > src/core/thread.d:(.text.thread_attachThis+0xb7): undefined reference to > `_tlsstart' > src/core/thread.d:(.text.thread_attachThis+0xbc): undefined reference to > `_tlsend' > /usr/lib/i386-linux-gnu/libphobos2.a(thread_17d_1b8.o): In function > `_D4core6thread6Thread6__ctorMFPFZvkZC4core6thread6Thread': > src/core/thread.d:(.text._D4core6thread6Thread6__ctorMFPFZvkZC4core6thread6Thread+0x1d): > undefined reference to `_tlsend' > src/core/thread.d:(.text._D4core6thread6Thread6__ctorMFPFZvkZC4core6thread6Thread+0x27): > undefined reference to `_tlsstart' > /usr/lib/i386-linux-gnu/libphobos2.a(thread_17e_1b8.o): In function > `_D4core6thread6Thread6__ctorMFDFZvkZC4core6thread6Thread': > src/core/thread.d:(.text._D4core6thread6Thread6__ctorMFDFZvkZC4core6thread6Thread+0x1d): > undefined reference to `_tlsend' > src/core/thread.d:(.text._D4core6thread6Thread6__ctorMFDFZvkZC4core6thread6Thread+0x27): > undefined reference to `_tlsstart' > /usr/lib/i386-linux-gnu/libphobos2.a(deh2_43b_525.o): In function > `_D2rt4deh213__eh_finddataFPvZPS2rt4deh29FuncTable': > src/rt/deh2.d:(.text._D2rt4deh213__eh_finddataFPvZPS2rt4deh29FuncTable+0x4): > undefined reference to `_deh_beg' > src/rt/deh2.d:(.text._D2rt4deh213__eh_finddataFPvZPS2rt4deh29FuncTable+0xc): > undefined reference to `_deh_beg' > src/rt/deh2.d:(.text._D2rt4deh213__eh_finddataFPvZPS2rt4deh29FuncTable+0x13): > undefined reference to `_deh_end' > src/rt/deh2.d:(.text._D2rt4deh213__eh_finddataFPvZPS2rt4deh29FuncTable+0x36): > undefined reference to `_deh_end' > /usr/lib/i386-linux-gnu/libphobos2.a(thread_17a_713.o): In function > `thread_entryPoint': > src/core/thread.d:(.text.thread_entryPoint+0x64): undefined reference to > `_tlsend' > src/core/thread.d:(.text.thread_entryPoint+0x6a): undefined reference to > `_tlsstart' > collect2: ld returned 1 exit status > --- errorlevel 1 > >
Try and paste the output of the following: dmd -c hello.d objdump -d hello.o Regards -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0';