why no ld.exe in 2.066.1 Windows builds?

Ivan Kazmenko via D.gnu d.gnu at puremagic.com
Mon Apr 13 08:25:05 PDT 2015


On Monday, 13 April 2015 at 14:25:57 UTC, Johannes Pfau wrote:
> Am Mon, 13 Apr 2015 08:44:25 +0000
> schrieb "Ivan Kazmenko" <gassa at mail.ru>:
>> Thanks, looking forward to it.
> Updated builds are on http://gdcproject.org/downloads

Hmm.

The new 64-bit build worked for me just fine, thanks!  On my 
example program, for the resulting executable, running time and 
memory consumption are similar to that of dmd64's.

However, the 32-bit build locally fails to compile anything:
-----
void main(){}
-----
Linking errors:
-----
c:/software/gdc32/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../lib/libgphobos2.a(thread.o): 
In function `_lambda3':
/home/build/tmp/build/.build/src/gcc-4.9.2/libphobos/libdruntime/core/thread.d:1983: 
undefined reference to `D2rt5tlsgc4initFZPv'
c:/software/gdc32/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../lib/libgphobos2.a(thread.o): 
In function `D4core6thread6Thread6__dtorMFZv':
/home/build/tmp/build/.build/src/gcc-4.9.2/libphobos/libdruntime/core/thread.d:633: 
undefined reference to `D2rt5tlsgc7destroyFPvZv'
c:/software/gdc32/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../lib/libgphobos2.a(thread.o): 
In function `thread_entryPoint at 4':
/home/build/tmp/build/.build/src/gcc-4.9.2/libphobos/libdruntime/core/thread.d:193: 
undefined reference to `D2rt5tlsgc4initFZPv'
c:/software/gdc32/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../lib/libgphobos2.a(thread.o): 
In function `thread_attachThis':
/home/build/tmp/build/.build/src/gcc-4.9.2/libphobos/libdruntime/core/thread.d:1903: 
undefined reference to `D2rt5tlsgc4initFZPv'
c:/software/gdc32/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../lib/libgphobos2.a(thread.o): 
In function `thread_attachByAddrB':
/home/build/tmp/build/.build/src/gcc-4.9.2/libphobos/libdruntime/core/thread.d:1968: 
undefined reference to `D2rt5tlsgc4initFZPv'
c:/software/gdc32/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../lib/libgphobos2.a(thread.o): 
In function 
`D4core6thread15scanAllTypeImplFNbMDFNbE4core6thread8ScanTypePvPvZvPvZv':
/home/build/tmp/build/.build/src/gcc-4.9.2/libphobos/libdruntime/core/thread.d:2666: 
undefined reference to `D2rt5tlsgc4scanFNbPvMDFNbPvPvZvZv'
c:/software/gdc32/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../lib/libgphobos2.a(thread.o): 
In function `thread_processGCMarks':
/home/build/tmp/build/.build/src/gcc-4.9.2/libphobos/libdruntime/core/thread.d:2896: 
undefined reference to 
`D2rt5tlsgc14processGCMarksFNbPvMDFNbPvZiZv'
collect2.exe: error: ld returned 1 exit status
-----

Trying to link the libraries manually ("-lgdruntime -lgphobos2") 
does not change the error.  The symbols seem to be present in 
both libs as far as my understanding goes (tlsgc.o in 
libgdruntime.a lists __D2rt5tlsgc4initFZPv in my viewer, for 
example).  So, what's wrong?

Ivan Kazmenko.


More information about the D.gnu mailing list