emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Pretest compilation problem


From: Chong Yidong
Subject: Pretest compilation problem
Date: Wed, 16 Feb 2011 09:22:40 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

I got an email from Nelson Beebe about a problem compiling a 32-bit
version on a 64-bit x64 machine:

> gcc -c -D_BSD_SOURCE -Demacs -DHAVE_CONFIG_H
> -I. -I/local/build32/gcc/emacs-23.2.94/src -D_BSD_SOURCE -m32
> -I/usr/local/include -MMD -MF deps/prefix-args.d
> prefix-args.c
> gcc -Wl,-rpath,/usr/local/lib -L/usr/local/lib -Wl,-znocombreloc
> prefix-args.o -o prefix-args
> /home/local/bin/../lib/gcc-lib/x86_64-unknown-linux-gnu/3.3.5/../../../../x86_64-unknown-linux-gnu/bin/ld:
> i386 architecture of input file `prefix-args.o' is
> incompatible with i386:x86-64 output
>
> The problem is in src/Makefile:137:
>
>              $(CC) $(LDFLAGS) prefix-args.o -o prefix-args
>
> In general, $(CC) should ALWAYS have a $(CFLAGS) following it;
> otherwise, architecture-specific
> flags like -m32 fail to be supplied.

Adding $(CFLAGS) sounds correct, except for a comment about this rule in
Makefile.in, which I don't understand:

/* We do not use ALL_LDFLAGS because LD_SWITCH_SYSTEM and LD_SWITCH_MACHINE
   often contain options that have to do with using Emacs''s crt0,
   which are only good with temacs.  */
prefix-args${EXEEXT}: prefix-args.o $(config_h)
        $(CC) $(LDFLAGS) prefix-args.o -o prefix-args

Does anyone know what this warning is about, and whether adding
$(CFLAGS) (or $(ALL_CFLAGS)?) could cause problems here?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]