我正在尝试使用 -m32 标志编译一个非常简单的程序。
如果我尝试使用 gcc -m32 执行此操作,它工作得很好(我有所需的库)
然而,当我将此标志添加到我在 makefile 中的标志时,我收到一个奇怪的错误
这是我拥有的 makefile
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