Got below error:
Makefile:2: *** missing separator. Stop.
Check the Makefile using cat -e -t -v:
zzh@ZZHPC:/zdata/Github/zimplebank$ cat -vE -t Makefile createdb:$ docker exec -it postgres16 createdb --username=root --owner=root zimple_bank$ $ dropdb:$ docker exec -it postgres16 dropdb zimple_bank$ $ .PHONY createdb dropdb
make defines a tab is required to start each recipe. All actions of every rule are identified by tabs. If you prefer to prefix your recipes with a character other than tab, you can set the .RECIPEPREFIX variable to an alternate character.
Replaced the indentation spaces to tabs:
zzh@ZZHPC:/zdata/Github/zimplebank$ cat -vE -t Makefile createdb:$ ^Idocker exec -it postgres16 createdb --username=root --owner=root zimple_bank$ $ dropdb:$ ^Idocker exec -it postgres16 dropdb zimple_bank$ $ .PHONY createdb dropdbzzh@ZZHPC:/zdata/Github/zimplebank$ make dropdb Makefile:7: *** missing separator. Stop.
Still got the error, but the error line number changed to 7. Checked and found that a colon was missing after .PHONY.
zzh@ZZHPC:/zdata/Github/zimplebank$ cat -vE -t Makefile createdb:$ ^Idocker exec -it postgres16 createdb --username=root --owner=root zimple_bank$ $ dropdb:$ ^Idocker exec -it postgres16 dropdb zimple_bank$ $ .PHONY: createdb dropdbzzh@ZZHPC:/zdata/Github/zimplebank$ make dropdb docker exec -it postgres16 dropdb zimple_bank