I'm not sure I understand your problem. For example, emacs can do all that: You write your source code in it (file test.C). You write your make file in it (in whatever make system you prefer, could be old-fashioned make, or today perhaps bazel). Then you use the emacs command "compile", and it will compile and link your code using the make system and file you specified. If there are compile errors, you can see the compile log in one window, and use the command "next-error" to find the corresponding source line. Once your program has been compiled, you can use the command "shell" to run your program, and see the output. I do this all day long. I don't know how to run a debugger (like lldb or gdb) under emacs, but a little web search should find that. There are lots of programming-language specific tools for emacs available, which allow for example finding the definition of a function from the place where it is called.
There are also GUI-based tools that can do the same thing: Edit, compile run, debug, and have lots of . I think Eclipse has the highest market share among Unix users, while MS Visual Studio probably leads among Windows users. Personally, I've used Eclipse about 5 years ago (and hated it), and Visual Studio about 15 years ago (and loved it then, but only after replacing their built-in editor with an emacs clone).
I'm sure vim can accomplish the same thing. Why does this not answer your question?