News:

As usual while waiting for the next release - don't forget to check the nightly builds in the forum.

Main Menu

mingw gcc --save-temps

Started by sarkar112, January 02, 2009, 11:42:27 PM

Previous topic - Next topic

sarkar112

Dev-cpp:
Compiler: Mingw32/Win32
Executing  gcc.exe...
gcc.exe "C:\sarkar112\ball\ball.c" -o "C:\sarkar112\ball\ball.exe"   --save-temps -masm=intel -Wall -march=i386 -Wl,--allow-multiple-definition -fomit-frame-pointer -ansi -traditional-cpp -fexceptions -fexpensive-optimizations -O3 -g3  -I"C:\Dev-Cpp\include"  -I"C:\cygwin\usr\include"  -I"C:\WINDDK\2600\inc\ddk\wxp"   -L"C:\Dev-Cpp\lib" -L"C:\Dev-Cpp\mingw32\lib" -L"C:\cygwin\lib" -L"C:\WINDDK\2600\lib\wxp\i386" -L"C:\WINDDK\2600\lib\w2k\i386" -L"C:\Dev-Cpp\lib\OGRE" -Wl,--enable-runtime-pseudo-reloc -lws2_32 -lwininet -lmysql -lcrypto -lMSVCRT -lz -ljpeg -llibssl -lIrrlicht -lirrKlang -lirrXML -lNewton -lexpat -lsqlite3 -lSDL_Net -lpthread -lOgreMain -lssl -lcrypto -Wl,--enable-runtime-pseudo-reloc -g3
Execution terminated
Compilation successful


Dev-cpp produces a preprocessed source (ball.i) & an asm source file (ball.s) in C:\sarkar112\ball\ as per "--save-temps" which was passed to gcc, but codeblocks doesn't.

Codeblocks:
[ 50.0%] gcc.exe -fexpensive-optimizations -Os -O3  -Wmain -Wall -ansi --save-temps -masm=intel -Wall -march=i386 -Wl,--allow-multiple-definition -fomit-frame-pointer   -IC:\Dev-Cpp\Bin -IC:\Dev-Cpp\mingw32\bin -IC:\Dev-Cpp\Bin\OGRE -IC:\cygwin\bin -IC:\Dev-Cpp\include -IC:\sarkar112\ball  -c C:\sarkar112\ball\ball.c -o C:\sarkar112\ball\ball.o
gcc.exe: --allow-multiple-definition: linker input file unused because linking not done
[100.0%] g++.exe -LC:\Dev-Cpp\lib -LC:\Dev-Cpp\mingw32\lib -LC:\Dev-Cpp\lib\OGRE -LC:\WINDDK\2600\lib\wxp\i386 -LC:\WINDDK\2600\lib\w2k\i386 -LC:\cygwin\lib  -o C:\sarkar112\ball\ball.exe C:\sarkar112\ball\ball.o  -s -Wl,--enable-runtime-pseudo-reloc -lws2_32 -lwininet -lmysql -lcrypto -lMSVCRT -lz -ljpeg -llibssl -lIrrlicht -lirrKlang -lirrXML -lNewton -lexpat -lsqlite3 -lSDL_Net -lpthread -lOgreMain -lssl -lcrypto -Wl,--enable-runtime-pseudo-reloc 


Both produce an object file (ball.o) and the executable (ball.exe), but codeblocks fails to produce the preprocessed source & the asm source.

aurisc4

Do they both use the same compiler? Maybe you have two MinGW installations?
What happens when doing the same directly from command line?

sarkar112

#2
Quote from: aurisc4 on January 03, 2009, 12:12:00 AM
Do they both use the same compiler? Maybe you have two MinGW installations?
What happens when doing the same directly from command line?

A. Yes.
B. No.
C. The same thing that happens when compiling within the IDEs.

Both were not in projects, I tried adding ball.c to a project and then compiling in C::B, and the preprocessed code & assembly code files were in the project directory.

Jenna

I guess the missing files are built in C::B's executable dir.

Referring to the gcc manual they will be stored in the current directory.

If you have no project C::B uses the directory it is started from, if you use the shortcut-icon the working-directory defaults to the executables directory.