Compilation of previously preprocessed output change files

I have a source file that I pre-process with options -Eand -P(using GCC 4.1.2 for the built-in platform based on vxWorks). All other parameters are the same as when compiling the file. These options are:

-Wall  
-march=pentium 
-nostdinc 
-O0 
-fno-builtin 
-fno-defer-pop
-g  
-c
-o

as well as all include-paths. Now, when I compile this pre-processed file, the resulting file object is much smaller (about 30%) than when compiling the original directly. And when I link the program, the linker complains about the absence of characters (everything in the user code), which again does not happen when using the original source file. Why is there a difference? Is there any way to make this work?

+5
2

, -D? , - .

( ) , gcc -E, - vxWorks. Cross-gcc , gcc -E.

+1

-fpreprocessed, GCC .

, , , , , - , , . , , ?

+1

All Articles