Hi Phil Yes. On Tue, 2008-07-22 at 13:57 -0600, Phil Meyer wrote: > William Case wrote: > > Hi; > > > > I am working my way through the compiling process. I want to be precise > > about my question so that responders do not waste time on answering the > > wrong question. > > > > Where can I find/see which preprocessor, lexical analysiser, parser etc. > > the gcc compliler is using in Fedora? What order are they being used in > > and any other instructions or agruments that are being passed to them by > > gcc (the compiler) besides the original/modified code? > > > > This may be too onvious, and perhaps not understanding the question > fully, but it seems like you want to see the output of -v during a > compile. It shows each step, what process is called with what > arguments, and the global variables as set. > > Here is a cc -v of a tiny c program: > > -> cc -v h.c > Using built-in specs. > Target: i386-redhat-linux > Configured with: ../configure --prefix=/usr --mandir=/usr/share/man > --infodir=/usr/share/info > --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap > --enable-shared --enable-threads=posix --enable-checking=release > --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions > --enable-languages=c,c++,objc,obj-c++,java,fortran,ada > --enable-java-awt=gtk --disable-dssi --enable-plugin > --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre > --enable-libgcj-multifile --enable-java-maintainer-mode > --with-ecj-jar=/usr/share/java/eclipse-ecj.jar > --disable-libjava-multilib --with-cpu=generic --build=i386-redhat-linux > Thread model: posix > gcc version 4.3.0 20080428 (Red Hat 4.3.0-8) (GCC) > COLLECT_GCC_OPTIONS='-v' '-mtune=generic' > /usr/libexec/gcc/i386-redhat-linux/4.3.0/cc1 -quiet -v h.c -quiet > -dumpbase h.c -mtune=generic -auxbase h -version -o /tmp/ccAc0MUf.s > ignoring nonexistent directory > "/usr/lib/gcc/i386-redhat-linux/4.3.0/include-fixed" > ignoring nonexistent directory > "/usr/lib/gcc/i386-redhat-linux/4.3.0/../../../../i386-redhat-linux/include" > #include "..." search starts here: > #include <...> search starts here: > /usr/local/include > /usr/lib/gcc/i386-redhat-linux/4.3.0/include > /usr/include > End of search list. > GNU C (GCC) version 4.3.0 20080428 (Red Hat 4.3.0-8) (i386-redhat-linux) > compiled by GNU C version 4.3.0 20080428 (Red Hat 4.3.0-8), GMP > version 4.2.2, MPFR version 2.3.0-p2. > GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 > Compiler executable checksum: a6100d27c113f078654b8bcf6e8eb1d2 > h.c:4:16: warning: character constant too long for its type > COLLECT_GCC_OPTIONS='-v' '-mtune=generic' > as -V -Qy -o /tmp/ccvbBE9m.o /tmp/ccAc0MUf.s > GNU assembler version 2.18.50.0.6 (i386-redhat-linux) using BFD version > version 2.18.50.0.6-4.fc9 20080403 > COMPILER_PATH=/usr/libexec/gcc/i386-redhat-linux/4.3.0/:/usr/libexec/gcc/i386-redhat-linux/4.3.0/:/usr/libexec/gcc/i386-redhat-linux/:/usr/lib/gcc/i386-redhat-linux/4.3.0/:/usr/lib/gcc/i386-redhat-linux/:/usr/libexec/gcc/i386-redhat-linux/4.3.0/:/usr/libexec/gcc/i386-redhat-linux/:/usr/lib/gcc/i386-redhat-linux/4.3.0/:/usr/lib/gcc/i386-redhat-linux/ > LIBRARY_PATH=/usr/lib/gcc/i386-redhat-linux/4.3.0/:/usr/lib/gcc/i386-redhat-linux/4.3.0/:/usr/lib/gcc/i386-redhat-linux/4.3.0/../../../:/lib/:/usr/lib/ > COLLECT_GCC_OPTIONS='-v' '-mtune=generic' > /usr/libexec/gcc/i386-redhat-linux/4.3.0/collect2 --eh-frame-hdr > --build-id -m elf_i386 --hash-style=gnu -dynamic-linker > /lib/ld-linux.so.2 /usr/lib/gcc/i386-redhat-linux/4.3.0/../../../crt1.o > /usr/lib/gcc/i386-redhat-linux/4.3.0/../../../crti.o > /usr/lib/gcc/i386-redhat-linux/4.3.0/crtbegin.o > -L/usr/lib/gcc/i386-redhat-linux/4.3.0 > -L/usr/lib/gcc/i386-redhat-linux/4.3.0 > -L/usr/lib/gcc/i386-redhat-linux/4.3.0/../../.. /tmp/ccvbBE9m.o -lgcc > --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s > --no-as-needed /usr/lib/gcc/i386-redhat-linux/4.3.0/crtend.o > /usr/lib/gcc/i386-redhat-linux/4.3.0/../../../crtn.o > That was what I wanted to see although not quite so rough. I had hoped there might some minimal explanations along the way and that it would not be necessary to actually compile something to see it. But, essentially that was what I wanted to see. An occasional 'here be dragons'; ie "/usr/lib/gcc/i386-redhat-linux/4.3.0/../../../../i386-redhat-linux/include" 'here be lexer' or 'here be parser' or 'here be assembler' etc. or some such. Perhaps a document that says at such and such a point the preprocesser function(s) or lexer function(s) are called. Anything that explains, directs, shows or helps let the user know what is going on. But, if that is all I can get, I will dig into the gcc library. -- Regards Bill; Fedora 9, Gnome 2.22.3 Evo.2.22.3.1, Emacs 22.2.1 -- fedora-list mailing list fedora-list@xxxxxxxxxx To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list