Вам нужно будет использовать ключ -o каждый раз, когда вы вызываете cc:
cc -o path/to/my/file/a.out path/to/my/file/example.c
, или вы можете создать скрипт-обёртку так:
mycc
#!/bin/bash
dirname=`dirname "$1"`
#enquoted both input and output filenames to make it work with files that include spaces in their names.
cmd="cc -o \"$dirname/a.out\" \"$1\""
eval $cmd
тогда вы можете вызвать
./mycc path/to/my/file/example.c
, и это, в свою очередь, вызовет
cc -o "path/to/my/file/a.out" path/to/my/file/example.c
конечно, вы можете поместить mycc в $ PATH, чтобы вы могли вызывать его следующим образом:
mycc path/to/my/file/example.c