gcc for ppc/predefined macros

Tom Rini trini at kernel.crashing.org
Tue Feb 3 05:49:39 EST 2004


On Mon, Feb 02, 2004 at 10:49:01AM +0100, Stefan Nickl wrote:

>
> I just had to find out very painfully that
> my cross-gcc-3.3.2 doesn't have __powerpc__
> as a predefined macro anymore:
>
> (SuSE-built-) gcc 2.95.3:
> .../powerpc-linux-cpp -dM ~/foo.h |grep -i pc
>
> #define powerpc 1
> #define __PPC__ 1
> #define PPC 1
> #define _ARCH_PPC 1
> #define __PPC 1
> #define __powerpc__ 1
> #define __powerpc 1
>
>
> (gentoo-crossdev-build-) gcc 3.3.2:
> .../powerpc-unknown-eabi-cpp -dM ~/foo.h |grep -i pc
>
> #define _ARCH_PPC 1
> #define __PPC 1
> #define PPC 1
> #define __PPC__ 1
>
> The kernel relies on __powerpc__ in some places,
> in fact, the serial console won't work anymore
> since the LCR gets setup incorrectly in
> serial_console_setup located in serial.c.

I belive the problem is that you did not compile your cross-compiler
correctly:
$ ppc_7xx-cpp -dM /tmp/foo.h  | grep pc
#define __powerpc__ 1
#define __powerpc 1
#define powerpc 1

Make sure you do --target=powerpc-foo-linux when configuring gcc.

--
Tom Rini
http://gate.crashing.org/~trini/

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/





More information about the Linuxppc-embedded mailing list