> cc -fPIE -shared -Wall -Wextra -o alu_bit.o alu_bit.c
All your .c.o rules need to pass the -c command line option to cc.
You compile (only) all the .c files into .o files in the first instance.
Then you link all the objects and libraries to produce the executable.