-m32 フラグを使用して非常に単純なプログラムをコンパイルしようとしています。
gcc -m32 を使用してこれを実行しようとすると、問題なく動作します(必要なライブラリがあります)
それでも、このフラグをメイクファイルのフラグに追加すると、奇妙なエラーが発生します
これは私が持っているメイクファイルです
CC=gcc
CFLAGS=-m32 -O1 -W -Wall -pedantic -std=c99
all: main.o
$(CC) -o main main.o
rm main.o
clean:
rm main
私が受け取るエラーは次のとおりです
gcc -o main main.o
/usr/bin/ld: i386 architecture of input file `main.o' is incompatible with i386:x86-64 output
collect2: ld returned 1 exit status
make: *** [all] Error 1
誰かがこれが何を意味するのか教えてもらえますか? どうすれば修正できますか?
コードに関しては、コードは「hello world」を出力する以外は何もしません
Linux 2.6.35 64 ビットで GCC 4.4.3 を使用しています