User forums > Nightly builds

The 25 february 2006 build is out.

<< < (2/3) > >>

Zingam:
Interesting: it wasn't there before  :shock:

Zingam:
Here is the compiler log. I've two build targets: Release and Debug. As you see Rlease has all the switches added but actually I have for it just: -v -inline -O -release
and for Debug: -g -debug -unittest -v

for the Debug target I have set also -unittest but I cannot see it in the log at all and also bellow the Debug target in the log does not have any switches at all.

It is possible that I'm not using it correctly but I created these build targets a couple of minutes ago. Before that with the default setting it didn't work too but I don't have a log.

If you need more: I could make a new try.



-------------- Build: Release in D ---------------
dmd.exe -g -debug -v -release -O -inline -g -debug  -IC:\dmd\src\phobos  -c student.d -of.objs\student.obj
parse     student
semantic  student
semantic2 student
semantic3 student
inline scan student
code      student
generating code for function 'Name'
generating code for function 'Name'
generating code for function 'Age'
generating code for function 'Age'
generating code for function 'this'
dmd.exe -g -debug -v -O -inline -g -debug -g -debug  -IC:\dmd\src\phobos  -c main.d -of.objs\main.obj
parse     main
semantic  main
semantic2 main
semantic3 main
inline scan main
code      main
generating code for function 'main'
dmd.exe bin\Release\D-Release.exe  .objs\student.obj .objs\main.obj  phobos.lib
C:\dmd\bin\..\..\dm\bin\link.exe .objs\student+.objs\main,bin\Release\D-Release.exe,,phobos.lib+user32+kernel32/noi;

-------------- Build: Debug in D ---------------
dmd.exe bin\Debug\D-Debug.exe  .objs\student.obj .objs\main.obj  phobos.lib
C:\dmd\bin\..\..\dm\bin\link.exe .objs\student+.objs\main,bin\Debug\D-Debug.exe,,phobos.lib+user32+kernel32/noi;
Process terminated with status 0 (0 minutes, 0 seconds)
0 errors, 0 warnings
 


Zingam:
Here I've deleted the Release target and this is what I get:

-------------- Build: Debug in D ---------------
dmd.exe -g -debug -v -unittest -g -debug -g -debug  -IC:\dmd\src\phobos  -c student.d -of.objs\student.obj
parse     student
semantic  student
semantic2 student
semantic3 student
code      student
generating code for function 'Name'
generating code for function 'Name'
generating code for function 'Age'
generating code for function 'Age'
generating code for function 'this'
dmd.exe -g -debug -v -unittest -g -debug -g -debug  -IC:\dmd\src\phobos  -c main.d -of.objs\main.obj
parse     main
semantic  main
semantic2 main
semantic3 main
code      main
generating code for function 'main'
dmd.exe bin\D-Debug.exe  .objs\student.obj .objs\main.obj  phobos.lib
C:\dmd\bin\..\..\dm\bin\link.exe .objs\student+.objs\main,bin\D-Debug.exe,,phobos.lib+user32+kernel32/noi;
Process terminated with status 0 (0 minutes, 0 seconds)
0 errors, 0 warnings



And it is still not what I get when I compile from the command prompt with this command:

c:\dmd\bin\dmd.exe main.d student.d -v -g -debug -unittest -od.objs -ofD-Debug.exe

killerbot:
Looking at this, I think I see the problem !!!
Both release and debug put their object files in .objs.

Release comes first -> actually compiles -> object files, and then links.
Debug comes second, the compiler sees there's nothing to be done, object files are more recent then the sources, it just links. The link step is carried out since the exe deliverable is going to be put on a different location then the release exe.

Just change the objs directory for your debug build :
example :
   for release  : .objsRelease
   for debug  : .objsDebug



Cheers,
Lieven

Zingam:
this doesn't really matter because I've deleted Release and when I use just one build target and switch on or off any compiler options (and I delete the both directories .obj and bin) always a file of the same size is generated although when comparing with cmp there are some different bytes.

When I compile the program from the command prompt in debug it has about 70kb more than when I compile it with C::B.
When I compile it in release mode from the command prompt it has the same size as when compiled with CB.

(This sounds sooo stupid :) Sorry!

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version