Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
16 years ago

Error during building the Toolchain

Hi all,

I'm trying to build the Toolchain for Nios2Linux, so i followed this (http://www.nioswiki.com/installnios2linux) guide.

at the make gcc stept i get the following error:

calderch: setarch i386 make gcc elf2flt gdb-host
/tmp2/uclinux-caldera/nios2-linux/toolchain-build/u-boot.mk:11: Board not defined! Using EP1S10 as default.
PATH=/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/NX/bin:/usr/X11R6/bin:/usr/NX/bin:/usr/NX/bin make -C /tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build all
make: Entering directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build'
make: Entering directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/libiberty'
make: Entering directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/libiberty/testsuite'
make: Nothing to be done for `all'.
make: Leaving directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/libiberty/testsuite'
make: Leaving directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/libiberty'
make: Entering directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/intl'
make: Nothing to be done for `all'.
make: Leaving directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/intl'
make: Entering directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc'
make 
  CFLAGS="-g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long  " 
  CONFIG_H="tconfig.h /tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc/../include/ansidecl.h" TM_H="tm.h      /tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc/config/elfos.h /tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc/config/nios2/nios2.h /tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc/config/nios2/nios2-uclibc.h /tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc/defaults.h insn-constants.h insn-flags.h" 
  INCLUDES="-I. -I. -I/tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc -I/tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc/. -I/tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc/../include " 
  MAKEOVERRIDES= 
  -f libgcc.mk all
make: Entering directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc'
for d in libgcc mno-hw-mul libgcc/mno-hw-mul mhw-mulx libgcc/mhw-mulx mstack-check libgcc/mstack-check mcustom-fpu-cfg=60-1 libgcc/mcustom-fpu-cfg=60-1 mcustom-fpu-cfg=60-2 libgcc/mcustom-fpu-cfg=60-2 mstack-check/mcustom-fpu-cfg=60-1 libgcc/mstack-check/mcustom-fpu-cfg=60-1 mstack-check/mcustom-fpu-cfg=60-2 libgcc/mstack-check/mcustom-fpu-cfg=60-2 mhw-mulx/mstack-check libgcc/mhw-mulx/mstack-check mhw-mulx/mcustom-fpu-cfg=60-1 libgcc/mhw-mulx/mcustom-fpu-cfg=60-1 mhw-mulx/mcustom-fpu-cfg=60-2 libgcc/mhw-mulx/mcustom-fpu-cfg=60-2 mhw-mulx/mstack-check/mcustom-fpu-cfg=60-1 libgcc/mhw-mulx/mstack-check/mcustom-fpu-cfg=60-1 mhw-mulx/mstack-check/mcustom-fpu-cfg=60-2 libgcc/mhw-mulx/mstack-check/mcustom-fpu-cfg=60-2 mno-hw-mul/mstack-check libgcc/mno-hw-mul/mstack-check mno-hw-mul/mcustom-fpu-cfg=60-1 libgcc/mno-hw-mul/mcustom-fpu-cfg=60-1 mno-hw-mul/mcustom-fpu-cfg=60-2 libgcc/mno-hw-mul/mcustom-fpu-cfg=60-2 mno-hw-mul/mstack-check/mcustom-fpu-cfg=60-1 libgcc/mno-hw-mul/mstack-check/mcustom-fpu-cfg=60-1 mno-hw-mul/mstack-check/mcustom-fpu-cfg=60-2 libgcc/mno-hw-mul/mstack-check/mcustom-fpu-cfg=60-2; do 
  if ; then true; else /bin/sh /tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc/mkinstalldirs $d; fi; 
done
if ; then true; else touch stmp-dirs; fi
make GCC_FOR_TARGET="/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc/xgcc -B/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc/ -B/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/nios2-linux-uclibc/bin/ -B/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/nios2-linux-uclibc/lib/ -isystem /tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/nios2-linux-uclibc/include -isystem /tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/nios2-linux-uclibc/sys-include" 
  AR_FOR_TARGET="nios2-linux-uclibc-ar" 
  AR_CREATE_FOR_TARGET="nios2-linux-uclibc-ar  rc" 
  AR_EXTRACT_FOR_TARGET="nios2-linux-uclibc-ar  x" 
  AR_FLAGS_FOR_TARGET="" 
  CC="gcc" CFLAGS="-g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long  " 
  BUILD_PREFIX="" 
  BUILD_PREFIX_1="loser-" 
  LANGUAGES="" 
  LIBGCC2_CFLAGS="-O2  -DIN_GCC -DCROSS_COMPILE   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -O2 -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc "  
  MULTILIB_CFLAGS="" T= crtbegin.o
make: Entering directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc'
make: `crtbegin.o' is up to date.
make: Leaving directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc'
make GCC_FOR_TARGET="/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc/xgcc -B/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc/ -B/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/nios2-linux-uclibc/bin/ -B/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/nios2-linux-uclibc/lib/ -isystem /tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/nios2-linux-uclibc/include -isystem /tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/nios2-linux-uclibc/sys-include" 
  AR_FOR_TARGET="nios2-linux-uclibc-ar" 
  AR_CREATE_FOR_TARGET="nios2-linux-uclibc-ar  rc" 
  AR_EXTRACT_FOR_TARGET="nios2-linux-uclibc-ar  x" 
  AR_FLAGS_FOR_TARGET="" 
  CC="gcc" CFLAGS="-g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long  " 
  BUILD_PREFIX="" 
  BUILD_PREFIX_1="loser-" 
  LANGUAGES="" 
  LIBGCC2_CFLAGS="-O2  -DIN_GCC -DCROSS_COMPILE   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -O2 -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc "  
  MULTILIB_CFLAGS="" T= crtend.o
make: Entering directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc'
make: `crtend.o' is up to date.
make: Leaving directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc'
make: Leaving directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc'
(SHLIB_LINK='' 
SHLIB_MULTILIB=''; 
gcc -c   -g -O2 -DIN_GCC -DCROSS_COMPILE  -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long    -DHAVE_CONFIG_H    -DSTANDARD_STARTFILE_PREFIX=\"../../../\" -DSTANDARD_EXEC_PREFIX=\"/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/lib/gcc/\" -DSTANDARD_LIBEXEC_PREFIX=\"/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/libexec/gcc/\" -DDEFAULT_TARGET_VERSION=\"3.4.6\" -DDEFAULT_TARGET_MACHINE=\"nios2-linux-uclibc\" -DSTANDARD_BINDIR_PREFIX=\"/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/nios2/bin/\" -DTOOLDIR_BASE_PREFIX=\"../../../../\"  `test "X${SHLIB_LINK}" = "X" || test "no" != "yes" || echo "-DENABLE_SHARED_LIBGCC"` `test "X${SHLIB_MULTILIB}" = "X" || echo "-DNO_SHARED_LIBGCC_MULTILIB"` 
        -I. -I. -I/tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc -I/tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc/. -I/tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc/../include  /tmp2/uclinux-caldera/nios2-linux/toolchain-build/../gcc3/gcc/cp/g++spec.c)
as: unrecognized option `-EL'
make: ***  Error 1
make: Leaving directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build/gcc'
make: ***  Error 2
make: Leaving directory `/tmp2/uclinux-caldera/nios2-linux/toolchain-build/build/gcc-build'
make: ***  Error 2

after doing some googleresearch, i think, the wrong cross-compiler is used. but i dont know how to change this.

Thanks in advance

3 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    so nobody has any clue, hint, or something which could help me, about it?

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I'm in the same boat here... it compiled for a while then got to a point where it error'd out. Now whenever I try to re-run the compilation the first line complains about "Board not defined..."

    I'm compiling under Ubuntu linux running Kubuntu, and am following the InstallNios2Linux tutorial. So far I've been able to fumble around and get this working thus far.

    Below is my terminal output should someone find it helpful. I'm sure I'm missing something simple here. Is it as simple as defining the target board? I'm using the DE2-70, not sure if there's some alias that it's expecting for it...

    <div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'>todd@Zorak:~/Desktop/nios2linux_src/nios2-linux/toolchain-build$ make gcc elf2flt gdb-host

    /home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/u-boot.mk:11: Board not defined! Using EP1S10 as default.

    PATH=/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/nios2/bin:/home/todd/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/nios2/bin make -C /home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build all-gcc

    make[1]: Entering directory `/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build&#39;

    make[2]: Entering directory `/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build/libiberty&#39;

    make[3]: Entering directory `/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build/libiberty/testsuite&#39;

    make[3]: Nothing to be done for `all&#39;.

    make[3]: Leaving directory `/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build/libiberty/testsuite&#39;

    make[2]: Leaving directory `/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build/libiberty&#39;

    make[2]: Entering directory `/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build/intl&#39;

    make[2]: Nothing to be done for `all&#39;.

    make[2]: Leaving directory `/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build/intl&#39;

    make[2]: Entering directory `/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build/gcc&#39;

    gcc -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -DHAVE_CONFIG_H -I. -I. -I/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/../gcc3/gcc -I/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/../gcc3/gcc/. -I/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/../gcc3/gcc/../include

    -DTARGET_MACHINE=\"nios2-linux-uclibc\"

    -c /home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/../gcc3/gcc/collect2.c -o collect2.o

    In function ‘open’,

    inlined from ‘collect_execute’ at /home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/../gcc3/gcc/collect2.c:1537:

    /usr/include/bits/fcntl2.h:51: error: call to ‘__open_missing_mode’ declared with attribute error: open with O_CREAT in second argument needs 3 arguments

    make[2]: *** [collect2.o] Error 1

    make[2]: Leaving directory `/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build/gcc&#39;

    make[1]: *** [all-gcc] Error 2

    make[1]: Leaving directory `/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build&#39;

    make: *** [/home/todd/Desktop/nios2linux_src/nios2-linux/toolchain-build/build/gcc-bootstrap-build/.compiled] Error 2

    todd@Zorak:~/Desktop/nios2linux_src/nios2-linux/toolchain-build$

    </div>
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    It&#39;s amazing what you&#39;ll find when you scour the forums...

    I came across this thread: http://forum.niosforum.com/forum/index.php?showtopic=6959 (http://forum.niosforum.com/forum/index.php?showtopic=6959) which is something of a release note for the 20090730 release of the nios2-linux package. Further down the thread actris has a post saying...

    <div class='quotetop'>QUOTE </div>

    --- Quote Start ---

    To compile 20090703 toolchain on a linux ubuntu 9.04 you need to do the followings :

    - /nios2-linux/gcc3/gcc/collect.c line 1537 :

    redir_handle = open (redir, O_WRONLY | O_TRUNC | O_CREAT);

    needs to be rewrite as below

    redir_handle = open (redir, O_WRONLY | O_TRUNC | O_CREAT,777);

    - buffer overflow on nios2-linux-uclibc-ar

    the toolchain need to be compiled with gcc4.2[/b]

    --- Quote End ---

    After modifying collect2.c (for some reason my file was named differently), installing gcc 4.2 (remember to re-direct the /usr/bin/gcc link!), and running a git clean, I was able to successfully compile.

    Hopefully this info is helpful to people running Ubuntu 9.04 and having issues compiling!