Почему не получается скомпилировать файл через wsl на c?
make mario.c
говорит, что нужно собрать mario.c, но собирать ведь надо не его, mario.c -- это исходник. Пиши make mario чтобы собрать mario из mario.c. И да, это работает без Makefile за счёт втроенных в make правил только для таких простых случаев. Для более сложных надо будет писать Makefile.
Для компиляции используется gcc, а не make.