Archives
D Programming
DD.gnu digitalmars.D digitalmars.D.bugs digitalmars.D.dtl digitalmars.D.dwt digitalmars.D.announce digitalmars.D.learn digitalmars.D.debugger C/C++ Programming
c++c++.announce c++.atl c++.beta c++.chat c++.command-line c++.dos c++.dos.16-bits c++.dos.32-bits c++.idde c++.mfc c++.rtl c++.stl c++.stl.hp c++.stl.port c++.stl.sgi c++.stlsoft c++.windows c++.windows.16-bits c++.windows.32-bits c++.wxwindows digitalmars.empire digitalmars.DMDScript |
c++ - Verbose compile
I just discovered the dmc '-v2' switch and it's very handy some times to see all the headers involved in a compile. E.g. dmc -mn -DWINDOWS -I. -v2 -oDMC_obj/utils.obj -c utils.c scppn -mn -DWINDOWS -I. -v2 utils.c -oDMC_obj/utils.obj Digital Mars C/C++ Compiler Version 8.35.10n Copyright (C) Digital Mars 2000-2003. All Rights Reserved. Written by Walter Bright www.digitalmars.com 'utils.c' '.\config.h' 'd:\prog\dmc\bin\..\include\stdio.h' 'd:\prog\dmc\bin\..\include\stdlib.h' 'd:\prog\dmc\bin\..\include\heapstat.h' 'd:\prog\dmc\bin\..\include\string.h' 'd:\prog\dmc\bin\..\include\sys/types.h' 'd:\prog\dmc\bin\..\include\limits.h' 'd:\prog\dmc\bin\..\include\sys/utime.h' 'd:\prog\dmc\bin\..\include\utime.h' 'd:\prog\dmc\bin\..\include\sys\types.h' 'd:\prog\dmc\bin\..\include\errno.h' 'd:\prog\dmc\bin\..\include\fcntl.h' 'd:\prog\dmc\bin\..\include\assert.h' 'd:\prog\dmc\bin\..\include\signal.h' 'wget.h' 'sysdep.h' 'd:\prog\dmc\bin\..\include\time.h' 'd:\prog\dmc\bin\..\include\sys/stat.h' '.\mswindows.h' 'd:\prog\dmc\bin\..\include\windows.h' 'd:\prog\dmc\bin\..\include\win32\scdefs.h' 'd:\prog\dmc\bin\..\include\win32\WINDOWS.H' 'd:\prog\dmc\bin\..\include\excpt.h' 'd:\prog\dmc\bin\..\include\stdarg.h' 'd:\prog\dmc\bin\..\include\windef.h' 'd:\prog\dmc\bin\..\include\win32\WINDEF.H' 'd:\prog\dmc\bin\..\include\winnt.h' 'd:\prog\dmc\bin\..\include\win32\WINNT.H' 'd:\prog\dmc\bin\..\include\ctype.h' Way to go Walter! Only wish the paths where all canonical. -- Gisle V. # rm /bin/laden /bin/laden: Not found Oct 14 2003
"Gisle Vanem" <giva users.sourceforge.net> wrote in message news:bmgrr5$2a6g$1 digitaldaemon.com...I just discovered the dmc '-v2' switch and it's very handy some times to see all the headers involved in a compile. E.g. dmc -mn -DWINDOWS -I. -v2 -oDMC_obj/utils.obj -c utils.c scppn -mn -DWINDOWS -I. -v2 utils.c -oDMC_obj/utils.obj Digital Mars C/C++ Compiler Version 8.35.10n Copyright (C) Digital Mars 2000-2003. All Rights Reserved. Written by Walter Bright www.digitalmars.com 'utils.c' '.\config.h' 'd:\prog\dmc\bin\..\include\stdio.h' 'd:\prog\dmc\bin\..\include\stdlib.h' 'd:\prog\dmc\bin\..\include\heapstat.h' 'd:\prog\dmc\bin\..\include\string.h' 'd:\prog\dmc\bin\..\include\sys/types.h' 'd:\prog\dmc\bin\..\include\limits.h' 'd:\prog\dmc\bin\..\include\sys/utime.h' 'd:\prog\dmc\bin\..\include\utime.h' 'd:\prog\dmc\bin\..\include\sys\types.h' 'd:\prog\dmc\bin\..\include\errno.h' 'd:\prog\dmc\bin\..\include\fcntl.h' 'd:\prog\dmc\bin\..\include\assert.h' 'd:\prog\dmc\bin\..\include\signal.h' 'wget.h' 'sysdep.h' 'd:\prog\dmc\bin\..\include\time.h' 'd:\prog\dmc\bin\..\include\sys/stat.h' '.\mswindows.h' 'd:\prog\dmc\bin\..\include\windows.h' 'd:\prog\dmc\bin\..\include\win32\scdefs.h' 'd:\prog\dmc\bin\..\include\win32\WINDOWS.H' 'd:\prog\dmc\bin\..\include\excpt.h' 'd:\prog\dmc\bin\..\include\stdarg.h' 'd:\prog\dmc\bin\..\include\windef.h' 'd:\prog\dmc\bin\..\include\win32\WINDEF.H' 'd:\prog\dmc\bin\..\include\winnt.h' 'd:\prog\dmc\bin\..\include\win32\WINNT.H' 'd:\prog\dmc\bin\..\include\ctype.h' Way to go Walter! Only wish the paths where all canonical. -- Gisle V. # rm /bin/laden /bin/laden: Not found Dec 16 2003
You are right, it is an extremely useful feature. I have just downloaded DM - it is my first command line environment (I use the free version), and so I took a look in the "bin" folder, discovered "make.exe" and read several make tutorials - all just outline the structure of a make file, not how to use them effectively! None mentioned any shortcut like this! You don have to write file.obj: $(file.dep) file.cpp but file.obj: ($file.dep) seems to be enough. I don't know what happens when file.dep does not exist, maybe no dependencies will be "filled in", and that causes make to rebuild the target - and when make is invoked the next time, it fills in the required dependencies. I have no idea how to effectively program in a command-line environment (although DM does not come with too many .exes, there is MinGW for example, which does), can you recommend any step-by-step tutorials for newbies like me? -Lars "grammer" <pgrammer_81 hotmail.com> schrieb im Newsbeitrag news:brndmo$1dj2$1 digitaldaemon.com..."Gisle Vanem" <giva users.sourceforge.net> wrote in message news:bmgrr5$2a6g$1 digitaldaemon.com...I just discovered the dmc '-v2' switch and it's very handy some times to see all the headers involved in a compile. E.g. dmc -mn -DWINDOWS -I. -v2 -oDMC_obj/utils.obj -c utils.c scppn -mn -DWINDOWS -I. -v2 utils.c -oDMC_obj/utils.obj Digital Mars C/C++ Compiler Version 8.35.10n Copyright (C) Digital Mars 2000-2003. All Rights Reserved. Written by Walter Bright www.digitalmars.com 'utils.c' '.\config.h' 'd:\prog\dmc\bin\..\include\stdio.h' 'd:\prog\dmc\bin\..\include\stdlib.h' 'd:\prog\dmc\bin\..\include\heapstat.h' 'd:\prog\dmc\bin\..\include\string.h' 'd:\prog\dmc\bin\..\include\sys/types.h' 'd:\prog\dmc\bin\..\include\limits.h' 'd:\prog\dmc\bin\..\include\sys/utime.h' 'd:\prog\dmc\bin\..\include\utime.h' 'd:\prog\dmc\bin\..\include\sys\types.h' 'd:\prog\dmc\bin\..\include\errno.h' 'd:\prog\dmc\bin\..\include\fcntl.h' 'd:\prog\dmc\bin\..\include\assert.h' 'd:\prog\dmc\bin\..\include\signal.h' 'wget.h' 'sysdep.h' 'd:\prog\dmc\bin\..\include\time.h' 'd:\prog\dmc\bin\..\include\sys/stat.h' '.\mswindows.h' 'd:\prog\dmc\bin\..\include\windows.h' 'd:\prog\dmc\bin\..\include\win32\scdefs.h' 'd:\prog\dmc\bin\..\include\win32\WINDOWS.H' 'd:\prog\dmc\bin\..\include\excpt.h' 'd:\prog\dmc\bin\..\include\stdarg.h' 'd:\prog\dmc\bin\..\include\windef.h' 'd:\prog\dmc\bin\..\include\win32\WINDEF.H' 'd:\prog\dmc\bin\..\include\winnt.h' 'd:\prog\dmc\bin\..\include\win32\WINNT.H' 'd:\prog\dmc\bin\..\include\ctype.h' Way to go Walter! Only wish the paths where all canonical. -- Gisle V. # rm /bin/laden /bin/laden: Not found Jun 08 2004
|