lkml.org 
[lkml]   [2005]   [Dec]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: i386 -> x86_64 cross compile failure (binutils bug?)
    Lee Revell wrote:

    >I'm trying to build an x66-64 kernel on a 32 bit system (Ubuntu 5.10).
    >I added -m64 to the CFLAGS as per the gcc docs. But the build fails
    >with:
    >
    >$ make ARCH=x86_64
    > [...]
    > CC init/initramfs.o
    >
    >

    I have successfully done this using Debian/Sid.

    1. I changed the linux/Makefile:
    ARCH ?= x86_64
    CROSS_COMPILE ?= x86_x64-linux-

    2. The I changed the path to include the following /tmp/lin64/ directory:
    PATH=/tmp/lin64:$PATH

    3. I made a bunch of scripts as follows all in the /tmp/lin64/ directory:
    x86_x64-linux-ar:
    #!/bin/bash
    ar $@

    x86_x64-linux-gcc:
    #!/bin/bash
    has32=`echo "$@" | grep -- "-m32"`
    if [ "$has32" = "" ] ; then
    gcc -m64 $@
    else
    gcc $@
    fi

    x86_x64-linux-ld:
    #!/bin/bash
    ld -m64 $@

    x86_x64-linux-nm:
    #!/bin/bash
    nm $@

    x86_x64-linux-objcopy:
    #!/bin/bash
    objcopy $@

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-12-09 23:40    [W:5.721 / U:0.048 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site