Is there something in the ninja language that makes it faster than make?

In short, Ninja parses faster, and has built-in features that reduce the amount to parse. From the philosophical overview in the ninja manual: Where other build systems are high-level languages, Ninja aims to be an assembler. Ninja files are often “compiled” from other makefiles, making it a two-step process whereas Make is a single step. … Read more

Use qtcreator with makefile project

As Greenflow mentioned, Qt Creator can import existing project but it doesn’t even depend on the existence of the Makefile. All you need to do for import of the existing project is specify the high-level folder in which the sources of the project are located (including sources in subdirectories) and set some name for the … Read more

gnu make “Removing intermediate files”

Since you’re using GNU Make, you can make the following adjustment to your Makefile: .PRECIOUS: $(BUILD)/%.pp # ADD THIS LINE $(BUILD)/%.pp: %.c $(ECHO) “PreProcess $<” $(Q)$(CC) $(CFLAGS) -E -Wp,-C,-dD,-dI -o $@ $< The documentation has this to say about .PRECIOUS directives: The targets which .PRECIOUS depends on are given the following special treatment: if make … Read more

makefile extension

If you run: make this program will look for a file named makefile in your directory, and then execute it. If you have several makefiles, then you can execute them with the command: make -f MyMakefile

Break long dependencies in Makefile into several lines

from the documentation https://www.gnu.org/software/make/manual/make.html#Splitting-Lines Makefiles use a “line-based” syntax in which the newline character is special and marks the end of a statement. GNU make has no limit on the length of a statement line, up to the amount of memory in your computer. However, it is difficult to read lines which are too long … Read more

error code: 521