binutils question

  • 2 Replies
  • Publish
    binutils question
    « on: 26 / December / 2011, 06:39:42 »
    I use Gentoo, and need to know if
    Code: [Select]
    cd binutils-2.18/
    ./configure --srcdir=`pwd` --target=arm-elf --prefix=${HOME}/arm-elf --disable-werror
    make -j 3
    make install
    will stuff up my normal emerge updates.

    I currently have
    gcc 4.4.5, with 4.4.3 and 4.5.3 available
    binutils 2.21.1-r1
    gmp 5.0.2
    mpfr 3.0.1_p4



    Offline reyalp

    • ******
    • 10700
  • Publish
    Re: binutils question
    « Reply #1 on: 26 / December / 2011, 14:47:46 »
    It should install in a subdirectory of your home directory, completely unrelated to your existing gcc configuration.  Since you are installing in your home directory, run the install as your regular user account, not root. That will prevent it from modifying the system stuff even if you mess up the command.

    You'll need to set your path appropriately to use it, of course.
    Don't forget what the H stands for.

  • Publish
    Re: binutils question
    « Reply #2 on: 28 / December / 2011, 07:59:36 »
    According to the Gcc433 wiki page,

    Code: [Select]
    mkdir ~/arm-elf
    export PATH=~/arm-elf/bin:$PATH
    mkdir ~/wa
    cd ~/wa

    mkdir down
    cd down
    wget [url][/url]

    cd ..
    for zipped in down/* ; do tar xjf $zipped ; done # Note: This may take a while.
    ln -s $(pwd)/gmp-4.2.4 gcc-4.3.3/gmp
    ln -s $(pwd)/mpfr-2.4.2 gcc-4.3.3/mpfr

    cd binutils-2.18/
    ./configure --srcdir=`pwd` --target=arm-elf --prefix=${HOME}/arm-elf --disable-werror
    make -j 3
    make install
    cd ..

    ed gcc-4.3.3/gcc/config/arm/t-arm-elf << EOF
    /mno-thumb-interwork/s/^# //
    /normal interwork/s/^# //

    mkdir gcc-4.3.3-arm-elf && cd gcc-4.3.3-arm-elf
    ../gcc-4.3.3/configure --srcdir=../gcc-4.3.3 --target=arm-elf \
     --enable-multilib --enable-languages=c --enable-clocale=gnu \
     --disable-libm --disable-libc --disable-threads \
     --disable-nls --disable-libssp --disable-intl \
     --with-cpu=arm9 --with-newlib --prefix=${HOME}/arm-elf
    (unset LIBRARY_PATH; unset CFLAGS; make -j 3 && make install) # Change "3" to "your systems number of cores" + 1
    should set up a development environment.  However I'm getting
    Code: [Select]
    checking for uchar...
    checking for ld used by GCC... /usr/lib/gcc/i686-pc-linux-gnu/4.4.5/../../../../i686-pc-linux-gnu/bin/ld
    checking if the linker (/usr/lib/gcc/i686-pc-linux-gnu/4.4.5/../../../../i686-pc-linux-gnu/bin/ld) is GNU ld... yes
    checking for shared library run path origin... done
    checking for iconv... yes
    checking for iconv declaration...
             extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
    updating cache ./config.cache
    configure: creating ./config.status
    config.status: creating Makefile
    config.status: creating config.h
    config.status: executing depdir commands
    mkdir -p -- .deps
    make[1]: Leaving directory `/home/wolf/wa/gcc-4.3.3-arm-elf'
    make: *** [all] Error 2
    when I try to compile gcc.  Not very informative...


    Related Topics