複数のディレクトリで簡単に変更およびコンパイルできる戦略を使用して、ゲームをプレイするプログラムを作成しようとしています。ゲームのソース ファイルのほとんどは不変です (つまり、戦略が変更されても同じままです)。ソース ファイルがa.c, b.c, c.c, d.c, e.cであるとします。ここで、a.c~d.cは不変でe.cあり、さまざまな戦略間で異なる唯一のファイルです。さらに、a.cをe.c呼び出します。そのため、未定義関数エラーを呼び出さずに完全に独立してコンパイルすることはできません。
(cc/gcc/etc.)a.cをd.c単一のファイルにeverything.oコンパイルする方法はありe.cますか?
> <command here> everything.o a.c b.c c.c d.c
> cc -g -o e.o e.c
> cc -g -o foo.o everything.o e.o
4つすべて(私の場合は〜20)のファイルを各ディレクトリにコピーすることなく、さまざまな戦略を実行するプログラムを作成できるように、すべてを別のディレクトリにコピーできますか?