Not always, today many compilers contain little information about targets, instead a generic and imaginary target can be used (called an 'intermediate representation').Is it the case that the compiler guy needs to know both the source code & the target code, whilst the source code guy (writing apps, such as browsers etc) only needs to learn the source code (like C).