I got a set of many obj (.o) files can I link them into other biger obj
file? (as an intermediate step later I will be linking this bigger obj's into exe)
Yes, at least with a link format like ELF, but it's generally not done. Usually if you want to group compiled .o files into a single "bundle" you use a static library. Everything is set up to support that, and it works with all link formats.
I got some header "all_headers.h" file containing references (includes) from all my header files (i know its bad name but I cannot find some better)
If I want to add it to my files I could use relative like
but both are somewhat wrong
It's wrong on 2 levels: (1) it's wrong because '\a' and '\c' are not valid characters to include in pathnames, and (2) using relative paths is bad practice becuase it makes work when you refactor your project, and it's not necessary. Certainly hardcoding the drive name into a path is going to bring you grief sooner or later.
It's not unusal to namespace headers, which uses paths relative to the top of a source tree. Relying on platform-specific behaviour like the dot-dot directory being the parent of the directory in which the current source file is found will break.
could I just include
and make precompiler to find it? (but i dont wont to copy this all_headers.h
out of my source folder to increase dependency confusion just to inform
compiler where ha can search for it ?)
Yes, that is how things are designed to work. The command-line switch for extending the search path for header files is -I (upper-case letter "i").