Forum Discussion

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

help buildroot

I am using Fedora Core 5 and I am unsuccessfully trying to follow hippo's build root guide. I have downloaded nios2linux-1.4.zip and build0411.zip into home/user/download. I have unziped the build0411.zip file and changed the snapshoot (line 29) to 20060424. I then cd ~/download followed by ./build . When the ./build "stops" running I have these lines displaying in my terminal.

<attachment>

This may be connected. I don&#39;t know for sure but I don&#39;t have busybox located at ~/rootfs/bin/busybox either.

Could somebody tell me what I have done wrong and or how to fix my problems. I am very new to linux so I really don&#39;t understand much of what I am doing.

Thanks

10 Replies

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

    Don&#39;t worry, other people find this problem too. Please skim this post first....

    http://forum.niosforum.com/forum/index.php...topic=3551&st=8 (http://forum.niosforum.com/forum/index.php?showtopic=3551&st=8)

    Here are some instructions that *should* help:

    1) Make a text file name &#39;~/download/rope.diff&#39; containing this:

    --- toolchain_build_nios2/gcc-3.4.6/libstdc++-v3/include/ext/rope         (original)
    +++ toolchain_build_nios2/gcc-3.4.6/libstdc++-v3/include/ext/rope      (working)
    68,72d67
    < /* Fix potential name clash */
    <#  ifdef index
    <#    undef index
    <#  endif

    2) cd ~/buildroot

    3) patch -p0 <~/download/rope.diff

    4) make

    Good luck, hopefully that should fix it.

    Hippo, I&#39;m a bit puzzled; wasn&#39;t this fixed already?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    originally posted by hootsmon@Apr 28 2006, 06:47 AM

    don&#39;t worry, other people find this problem too. please skim this post first....

    http://forum.niosforum.com/forum/index.php...topic=3551&st=8 (http://forum.niosforum.com/forum/index.php?showtopic=3551&st=8)

    here are some instructions that *should* help:

    1) make a text file name &#39;~/download/rope.diff&#39; containing this:

    --- toolchain_build_nios2/gcc-3.4.6/libstdc++-v3/include/ext/rope         (original)
    +++ toolchain_build_nios2/gcc-3.4.6/libstdc++-v3/include/ext/rope      (working)
    68,72d67
    < /* fix potential name clash */
    <#  ifdef index
    <#    undef index
    <#  endif

    2) cd ~/buildroot

    3) patch -p0 <~/download/rope.diff

    4) make

    good luck, hopefully that should fix it.

    hippo, i&#39;m a bit puzzled; wasn&#39;t this fixed already?

    <div align='right'><{post_snapback}> (index.php?act=findpost&pid=14778)</div>

    --- Quote End ---

    I found the same error during libstc++ build on FC5 yesterday.

    I have to disable c++ to get buildroot througt.

    I forgot that you did mention this issue in previous post. Thank you, again.

    The buildroot svn was not updated. Could you post this to them?

    Did you get c++ working on uClinux?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    originally posted by hippo@Apr 28 2006, 11:37 AM

    i found the same error during libstc++ build on fc5 yesterday.

    i have to disable c++ to get buildroot througt.

    i forgot that you did mention this issue in previous post. thank you, again.

    the buildroot svn was not updated. could you post this to them?

    did you get c++ working on uclinux?

    --- Quote End ---

    Hippo, this will be my first experience at posting anything to buildroot & busybox, but no problems, I&#39;ll muddle through OK.

    Unfortunately I didn&#39;t get C++ working, mainly because I don&#39;t even understand how to connect up GDB debugger, in order to trace where things go wrong. I&#39;m reasonably comfortable with GDB on the desktop, but remote debugging on the dev-board is a bit beyond me right now. The secondary excuse is I&#39;m occupied with learning all about learning Linux device drivers (following Corbet&#39;s terrific book), so C++ doesn&#39;t seem quite so important at the moment. But it would be really cool to get C++ working, because it must be almost there I think.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    originally posted by hootsmon+apr 28 2006, 09:58 am--><div class='quotetop'>quote (hootsmon @ apr 28 2006, 09:58 am)</div>

    --- quote start ---

    <!--quotebegin-hippo@Apr 28 2006, 11:37 AM

    i found the same error during libstc++ build on fc5 yesterday.

    i have to disable c++ to get buildroot througt.

    i forgot that you did mention this issue in previous post. thank you, again.

    the buildroot svn was not updated. could you post this to them?

    did you get c++ working on uclinux?

    --- Quote End ---

    Hippo, this will be my first experience at posting anything to buildroot & busybox, but no problems, I&#39;ll muddle through OK.

    Unfortunately I didn&#39;t get C++ working, mainly because I don&#39;t even understand how to connect up GDB debugger, in order to trace where things go wrong. I&#39;m reasonably comfortable with GDB on the desktop, but remote debugging on the dev-board is a bit beyond me right now. The secondary excuse is I&#39;m occupied with learning all about learning Linux device drivers (following Corbet&#39;s terrific book), so C++ doesn&#39;t seem quite so important at the moment. But it would be really cool to get C++ working, because it must be almost there I think.

    <div align='right'><{post_snapback}> (index.php?act=findpost&pid=14784)</div>

    [/b]

    --- Quote End ---

    I am really happy that more people help out.

    Joint the reporters on busybox.net is a great experience.

    They are quite active and responsive.

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

    Thanks for your help. I think I am close to running uClinux on my development board successfully. I am no longer having any trouble, which I am aware of doing the buildroot. However, when I try to run uClinux on my development board I see this output.

    Uncompressing Linux... Ok, booting the kernel.

    Linux version 2.6.16 (user@localhost.localdomain) (gcc version 3.4.6)# 1 PREEMPT Fri Apr 28 13:43:33 EST 2006

    uClinux/Nios II

    Altera Nios II support © 2004 Microtronix Datacom Ltd.

    Built 1 zonelists

    Kernel command line:

    PID hash table entries: 512 (order: 8, 4096 bytes)

    Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)

    Inode-cache hash table entries: 8192 (order: 2, 16384 bytes)

    Memory available: 31256k/31256k RAM, 0k/0k ROM (714k kernel code, 423k data)

    <continues like I would expect until>

    init started: BusyBox v1.2.0-pre0 (2006.04.28-07:53+0000) multi-call binary

    <nothing else is printed out to the jtag>

    Any thoughts on what may be wrong? Is my problem probably with busybox or is it something wrong with my kernel?

    I just went back and tried to redo "make" for my buildroot, and I recieved this error.

    # These are in /lib, so...

    rm -rf /home/user/buildroot/build_nios2/root/usr/lib/libgcc_s*.so*

    cp -a /home/user/buildroot/build_nios2/staging_dir/nios2-linux-uclibc/lib/libgcc_s* /home/user/buildroot/build_nios2/root/lib/

    cp: cannot stat `/home/user/buildroot/build_nios2/staging_dir/nios2-linux-uclibc/lib/libgcc_s*&#39;: No such file or directory

    make: [/home/user/buildroot/build_nios2/root/lib/libgcc_s.so.1] Error 1 (ignored)

    touch -c /home/user/buildroot/build_nios2/root/lib/libgcc_s.so.1

    touch -c /home/user/buildroot/build_nios2/root/usr/bin/ldd

    I check and /home/user/buildroot/build_nios2/root/lib is an empty folder. From the error message, I would expect that there is suppose to be atleast one file in this folder.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    originally posted by jjwalk04@Apr 29 2006, 02:34 AM

    thanks for your help. i think i am close to running uclinux on my development board successfully. i am no longer having any trouble, which i am aware of doing the buildroot. however, when i try to run uclinux on my development board i see this output.

    uncompressing linux... ok, booting the kernel.

    linux version 2.6.16 (user@localhost.localdomain) (gcc version 3.4.6)# 1 preempt fri apr 28 13:43:33 est 2006

    uclinux/nios ii

    altera nios ii support © 2004 microtronix datacom ltd.

    built 1 zonelists

    kernel command line:

    pid hash table entries: 512 (order: 8, 4096 bytes)

    dentry cache hash table entries: 8192 (order: 3, 32768 bytes)

    inode-cache hash table entries: 8192 (order: 2, 16384 bytes)

    memory available: 31256k/31256k ram, 0k/0k rom (714k kernel code, 423k data)

    <continues like i would expect until>

    init started: busybox v1.2.0-pre0 (2006.04.28-07:53+0000) multi-call binary

    <nothing else is printed out to the jtag>

    any thoughts on what may be wrong? is my problem probably with busybox or is it something wrong with my kernel?

    i just went back and tried to redo "make" for my buildroot, and i recieved this error.

    # these are in /lib, so...

    rm -rf /home/user/buildroot/build_nios2/root/usr/lib/libgcc_s*.so*

    cp -a /home/user/buildroot/build_nios2/staging_dir/nios2-linux-uclibc/lib/libgcc_s* /home/user/buildroot/build_nios2/root/lib/

    cp: cannot stat `/home/user/buildroot/build_nios2/staging_dir/nios2-linux-uclibc/lib/libgcc_s*&#39;: no such file or directory

    make: [/home/user/buildroot/build_nios2/root/lib/libgcc_s.so.1] error 1 (ignored)

    touch -c /home/user/buildroot/build_nios2/root/lib/libgcc_s.so.1

    touch -c /home/user/buildroot/build_nios2/root/usr/bin/ldd

    i check and /home/user/buildroot/build_nios2/root/lib is an empty folder. from the error message, i would expect that there is suppose to be atleast one file in this folder.

    <div align='right'><{post_snapback}> (index.php?act=findpost&pid=14833)

    --- quote end ---

    --- Quote End ---

    The error in building *.so should be ignored, because there isn&#39;t so (shared object) support in nios2 uClinux.

    The busybox is doing init .

    Please try the minimal inittab, rebuild busybox and zImage.

    make -C ~/buildroot/build_nios2/busybox clean

    make -C ~/buildroot# prepare root fs

    rm -rf ~/rootfs

    mkdir ~/rootfs

    cp -a ~/buildroot/build_nios2/root/* ~/rootfs

    cd ~/rootfs# remove include and lib to save space# the dev nodes are generated via ~/download/rootfs_list

    rm -rf dev usr/include usr/lib# you may use this instead of the one from buildroot

    cp ~/download/inittab etc

    rm ~/linux-2.6.x/usr/initramfs_list

    make ..... zImage
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    originally posted by jjwalk04@Apr 29 2006, 04:34 AM

    thanks for your help. i think i am close to running uclinux on my development board successfully. <continues like i would expect until>

    init started: busybox v1.2.0-pre0 (2006.04.28-07:53+0000) multi-call binary

    <nothing else is printed out to the jtag>

    --- Quote End ---

    Hi jjwalk04,

    Don&#39;t panic, I think you&#39;re very close now http://forum.niosforum.com/work2/style_emoticons/<#EMO_DIR#>/smile.gif

    Here are 2 questions:

    Q1) Does your board have a serial port?

    Q2) Did you select NIOS serial support like this? ...

               Nios serial support
                Support for console on Nios UART

    If your answer is YES, then I believe your console is getting redirected to the FIRST SERIAL port. That&#39;s why you don&#39;t see anything further on the JTAG port.

    Here&#39;s how to get your console back....

    1) Completely disable NIOS serial support in menuconfig. Note, the NIOS console option is NOT properly honoured, therefore enabling NIOS serial support automatically hijacks your console, regardless of your menuconfig selections. Personally, I find this bug is slightly annoying, and so far I haven&#39;t managed to find or fix it.

    2) If NIOS serial support is enabled, then you need to hook-up your board&#39;s RS232 port(s) to MINICOM or similar terminal. The default setup is 115kbaud 8-N-1. Now your console will appear on the first serial port.

    Hope this helps
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Thanks for your help. You were right my problem was with me enabling the serial uart in the kernel configuration. I had enabled the serial uart, but had not enabled the consol for the uart. I had done this

    [*] Nios serial support

    [ ] Support for console on Nios UART

    When I was building the uClinux kernel on windows, this was how I had done it and I didn&#39;t have any trouble with my kernel booting. Without your help, I probably would not have figured out was wrong. Thanks again for all of you help.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    originally posted by jjwalk04@May 1 2006, 10:15 PM

    thanks for your help. you were right my problem was with me enabling the serial uart in the kernel configuration. i had enabled the serial uart, but had not enabled the consol for the uart. i had done this

    [*] nios serial support

    [ ] support for console on nios uart

    when i was building the uclinux kernel on windows, this was how i had done it and i didn&#39;t have any trouble with my kernel booting. without your help, i probably would not have figured out was wrong. thanks again for all of you help.

    <div align='right'><{post_snapback}> (index.php?act=findpost&pid=14889)

    --- quote end ---

    --- Quote End ---

    No problem :-) The bug is only minor, but it would be really nice to fix it. I hadn&#39;t realized that it only occurs with kernels built on Linux, but not on Windows. Thanks, this info may help to narrow it down a little.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    in kernel dir drivers/serial/Kconfig dependon ....=y

    the "=y" caused the problem.