Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++

help buildroot

Altera_Forum
Contributeur émérite II
1 455 Visites

 

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

 

0 Compliments
10 Réponses
Altera_Forum
Contributeur émérite II
716 Visites

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?
0 Compliments
Altera_Forum
Contributeur émérite II
716 Visites

 

--- 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?
0 Compliments
Altera_Forum
Contributeur émérite II
716 Visites

 

--- 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.
0 Compliments
Altera_Forum
Contributeur émérite II
716 Visites

 

--- 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!
0 Compliments
Altera_Forum
Contributeur émérite II
716 Visites

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.
0 Compliments
Altera_Forum
Contributeur émérite II
716 Visites

 

--- 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
0 Compliments
Altera_Forum
Contributeur émérite II
716 Visites

 

--- 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
0 Compliments
Altera_Forum
Contributeur émérite II
716 Visites

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.
0 Compliments
Altera_Forum
Contributeur émérite II
716 Visites

 

--- 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.
0 Compliments
Altera_Forum
Contributeur émérite II
716 Visites

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

the "=y" caused the problem.
0 Compliments
Répondre