Компилировать можно все файлы одновременно одной командой, перечисляя составные файлы через пробел после ключа -c:
gcc -c main.c f1.c f2.c
Или каждый файл в отдельности:
gcc -c f1.c
gcc -c f2.c
gcc -c main.c
В результате работы компилятора мы получим три отдельных объектных файла:
main.o
f1.o
f2.o
Чтобы их собрать в один файл с помощью gcc надо использовать ключ -o, при этом линкер соберет все файлы в один:
gcc main.o f1.o f2.o -o rezult