Thread overview
Building 2.063.2 from source produces non-working toolchain??
Aug 28, 2013
H. S. Teoh
Aug 29, 2013
Nick Sabalausky
Aug 29, 2013
Nick Sabalausky
Aug 29, 2013
H. S. Teoh
Aug 29, 2013
Jacob Carlborg
August 28, 2013
While trying to track down a 2.063.2 problem someone posted to the D.learn forum, I tried to build dmd/druntime/phobos 2.063.2 from source, and to my chagrin, discovered that the resulting toolchain is non-functional.  Even the simplest program:

	void main() {}

doesn't compile:

/mnt/1/usr/bin/../lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o: In function `_start':
(.text+0x20): undefined reference to `main'
test.o: In function `no symbol':
test.d:(.text+0x6): undefined reference to `_Dmodule_ref'
collect2: error: ld returned 1 exit status
--- errorlevel 1

Attempting to run Phobos unittests also aborts with undefined references to `_Dmodule_ref'.

Am I doing something wrong?? How did 2.063.2 even build in the first place?

P.S. I'm on Linux 64-bit, in case that matters. (Also, I don't have 32-bit development libraries installed -- could that be a problem?)


T

-- 
May you live all the days of your life. -- Jonathan Swift
August 29, 2013
On Wed, 28 Aug 2013 15:18:47 -0700
"H. S. Teoh" <hsteoh@quickfur.ath.cx> wrote:
> 
>  (Also, I don't have
> 32-bit development libraries installed -- could that be a problem?)
> 

Possibly, although I don't know what the expected symptoms of that would be.

Could you post the exact steps you're using to checkout, build and test the toolchain? Also, are you sure your dmd.conf is right and that the right dmd.conf is being picked up?

August 29, 2013
On Thu, 29 Aug 2013 01:27:08 -0400
Nick Sabalausky <SeeWebsiteToContactMe@semitwist.com> wrote:

> On Wed, 28 Aug 2013 15:18:47 -0700
> "H. S. Teoh" <hsteoh@quickfur.ath.cx> wrote:
> > 
> >  (Also, I don't have
> > 32-bit development libraries installed -- could that be a problem?)
> > 
> 
> Possibly, although I don't know what the expected symptoms of that would be.
> 
> Could you post the exact steps you're using to checkout, build and test the toolchain? Also, are you sure your dmd.conf is right and that the right dmd.conf is being picked up?
> 

The following works for me, although my Linux box is a 32-bit VM (stupid consumer-level Intel CPU with no hardware virtualization...). But doing s/32/64/ *should* make it work on a 64-bit:

http://pastebin.com/QegPhs8U

August 29, 2013
On 2013-08-29 00:18, H. S. Teoh wrote:
> While trying to track down a 2.063.2 problem someone posted to the
> D.learn forum, I tried to build dmd/druntime/phobos 2.063.2 from source,
> and to my chagrin, discovered that the resulting toolchain is
> non-functional.  Even the simplest program:
>
> 	void main() {}
>
> doesn't compile:

Using a clone from git or the zip release?

-- 
/Jacob Carlborg
August 29, 2013
On Thu, Aug 29, 2013 at 01:57:11AM -0400, Nick Sabalausky wrote:
> On Thu, 29 Aug 2013 01:27:08 -0400
> Nick Sabalausky <SeeWebsiteToContactMe@semitwist.com> wrote:
[...]
> The following works for me, although my Linux box is a 32-bit VM (stupid consumer-level Intel CPU with no hardware virtualization...). But doing s/32/64/ *should* make it work on a 64-bit:
> 
> http://pastebin.com/QegPhs8U

*facepalm* I'm an idiot. My dmd.conf was broken, because it didn't include the -L-L%@P%/../../druntime/lib component, so no wonder it couldn't find the startup files.

I'll crawl into the corner to hide now. ;-)

Thanks for the detailed paste, though. I wouldn't have discovered the problem otherwise!


T

-- 
Perhaps the most widespread illusion is that if we were in power we would behave very differently from those who now hold it---when, in truth, in order to get power we would have to become very much like them. -- Unknown