C言語のコンパイルエラー「file not recognized: File format not recognized」の原因と解決方法
Linuxのviエディタで書いたC言語のプログラムソースファイルをコンパイルしようと思って、以下のコマンドを実行してみた。
gcc testfile
すると、以下のエラーメッセージが表示された。
testfile: file not recognized: File format not recognized
collect2: ld はステータス 1 で終了しました
このエラーが発生した原因は、プログラムソースファイルに「.c」という拡張子を付けていないことにあった。
プログラムソースファイルを「testfile」から「testfile.c」に変更後、
gcc testfile.c
とコマンドを実行し、再度コンパイルを試みると、問題なくコンパイルに成功し、「a.out」ファイルという名前の実行可能ファイルが生成された。