www.digitalmars.com         C & C++   DMDScript  

D.gnu - phobos build error

reply Michael P. <baseball.mjp gmail.com> writes:
Hey, I have been doing work on GDC to try and get it updated to a later DMD
front end.
I have been doing it incrementally, and am currently trying to do 1.031-1.032.
I have had some problems, like not being able to find a reference to
"util_progress"(is it in the DMD backend?), so I just commented it out in the
one function that it appeared in. Also an assert failure in statement.c. :P But
commented out the assert for now.
Anyways, I am having problems when building phobos. When it get to math.d, I
get problems about {standard input}. There is a log of what happens, plus the
errors, here:
http://pastebin.com/m2ee8a840
Anyone know what the problem might be?
The project on bitbucket is here:
http://bitbucket.org/goshawk/gdc/overview/
It contains the code I used to try and build GDC with.
Sep 25 2009
parent reply Michael P. <baseball.mjp gmail.com> writes:
Michael P. Wrote:

 Hey, I have been doing work on GDC to try and get it updated to a later DMD
front end.
 I have been doing it incrementally, and am currently trying to do 1.031-1.032.
I have had some problems, like not being able to find a reference to
"util_progress"(is it in the DMD backend?), so I just commented it out in the
one function that it appeared in. Also an assert failure in statement.c. :P But
commented out the assert for now.
 Anyways, I am having problems when building phobos. When it get to math.d, I
get problems about {standard input}. There is a log of what happens, plus the
errors, here:
 http://pastebin.com/m2ee8a840
 Anyone know what the problem might be?
 The project on bitbucket is here:
 http://bitbucket.org/goshawk/gdc/overview/
 It contains the code I used to try and build GDC with.

Okay, so I figured out a way around this - kind of. In phobos/Makefile.in, line 244 is this: internal/cast.o std/string.o internal/memset.o std/math.o \ when you change it to: internal/cast.o std/string.o internal/memset.o \ GDC compiles, but it doesn't work. When you try to compile, it gives a bunch of undefined reference errors to std.math functions. So I would assume the problem is somewhere in math.d.
Sep 25 2009
parent reply Vincenzo Ampolo <vincenzo.ampolo gmail.com> writes:
Michael P.  wrote:

 GDC compiles, but it doesn't work. When you try to compile, it gives a
 bunch of undefined reference errors to std.math functions. So I would
 assume the problem is somewhere in math.d.

Yep, since math.d is not included in phobos with the change you did, functions doesn't work. The problem is in math.d then.... uhm...
Sep 26 2009
parent reply Michael P. <baseball.mjp gmail.com> writes:
Vincenzo Ampolo Wrote:

 Michael P.  wrote:
 
 GDC compiles, but it doesn't work. When you try to compile, it gives a
 bunch of undefined reference errors to std.math functions. So I would
 assume the problem is somewhere in math.d.

Yep, since math.d is not included in phobos with the change you did, functions doesn't work. The problem is in math.d then.... uhm...

I fixed it. :) The problem actually wasn't in math.d. There was lots of asm in math.d, and in ExtAsmStatement, in statement.h, the blockExit function wasn't added to the interface, because it does not get included in the diffs. Because of that, the blockExit from Statement would get used, and it has an assert(0) in it, which I commented out before. So, I put the blockExit function in ExtAsmStatement, and in asmstment.cc, I commented another "#if V2" around the blockexit functions, and it works. :)
Sep 26 2009
parent Vincenzo Ampolo <vincenzo.ampolo gmail.com> writes:
Michael P.  wrote:

 I fixed it. :)
 The problem actually wasn't in math.d.
 There was lots of asm in math.d, and in ExtAsmStatement, in 

 the blockExit function wasn't added to the interface, because it 

 get included in the diffs. Because of that, the blockExit from 

 would get used, and it has an assert(0) in it, which I commented out
 before. So, I put the blockExit function in ExtAsmStatement, and in
 asmstment.cc, I commented another "#if V2" around the blockexit 

 and it works. :)
 

Great :D expect my commit soon aobut 2.015 ;)
Sep 26 2009