Hi


Since a network card normally has only one IP, nfs and tftp server have got the same. I think the problem is somewhere else.
So I would recommend to
- double check the filename/path settings for the kernel image in UBoot
- check whether the tftp server is running correctly and offering a tftp folder cat /proc/tftpd (or something similar) - check whether your firewall is open for tftp since this is not standard (if you are working on a gui desktop system you can easily use yast (for Suse) or other system configuration tools)

Andre


YangZhijun schrieb:
Thanks Phil,
After correct the PATH in my .bashrc, I successfully built the new Linux 
kernel, and hence completed section 4.5 at page 4-13 of the getting started 
guide. I got the boot file, uImage. I then installed the tftp package for 
ubuntu according to David Sudjiman's guide at

http://www.davidsudjiman.info/2006/03/27/installing-and-setting-tftpd-in-ubuntu/

I used %sudo netstat -uap to test, I got,
-----------------------------------------------------------------------
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name udp 0 0 *:32768 *:* 5173/avahi-daemon: udp 0 0 *:nfs *:* - udp 0 0 *:32770 *:* - udp 0 0 *:32771 *:* 5631/rpc.statd udp 0 0 *:bootpc *:* 6128/dhclient udp 0 0 *:bootpc *:* 5863/dhclient3 udp 0 0 *:tftp *:* 5620/xinetd udp 0 0 *:719 *:* 5631/rpc.statd udp 0 0 *:mdns *:* 5173/avahi-daemon: udp 0 0 *:sunrpc *:* 4456/portmap udp 0 0 *:1021 *:* 5509/rpc.mountd ----------------------------------------------------------------------------

Which means that tftp is working in my machine.


However, when I followed section 4.7 at page 4-15 to try to use the new kernel 
to boot the board, after I set the four environmental variables as required I 
got,

-------------------------------------------------
BOOTP broadcast 1
*** Unhandled DHCP Option in OFFER/ACK: 52
*** Unhandled DHCP Option in OFFER/ACK: 52
DHCP client bound to address 192.168.1.136
TFTP from server 192.168.1.207; our IP address is 192.168.1.136
Filename '�'.
Load address: 0x80700000
Loading: *
TFTP error: 'No such file or directory' (0)
--------------------------------------------------------

I used my NFS IP address, 192.168.1.207, as the tftp server IP address. I am not sure if it is right or not, and this is the only possibility that I think might lead to the above problem.
Does anyone knows how to identify the installed tftp server IP address?  Thanks 
a lot.

-Michael

Subject: RE: problem on building a new linux kernel
Date: Wed, 14 May 2008 14:48:20 +0100
From: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]; [email protected]










Hi
this looks like a PATH issue. To build things you need to add both <install_dir>/montavista/pro/devkit/arm/v5t_le/bin and <install_dir>/montavista/pro/bin to your PATH variable. Here '<install_dir>' is wherever the installation of the MV tools appears to the kernel kit (physically it is on your Ubuntu partition). You need to find where the partition is mounted when running the kernelkit. The command 'df' may help here. The first path is the compiler, the second is needed for other tools such as 'mkimage'. You can test it is working by typing 'which arm_v5t_le-gcc' and 'which mkimage'. 'which' should return a path to the command rather than saying 'no mkimage in .......' Regards Phil Q Phil Quiney, Senior Software Engineer
Trinity Convergence
Cambridge Business Park
Cowley Road
Cambridge CB4 0WZ, UK
T: +44(0)1223-435536
F: +44(0)1223-435560
www.trinityconvergence.com



From: YangZhijun [mailto:[EMAIL PROTECTED]
Sent: 13 May 2008 22:00
To: Phil Quiney; [email protected] Subject: RE: problem on building a new linux kernel


Hi, Thanks for your suggestion. Now I can configure the kernel using the DaVinci defaults, and enable the Montavista default kernel options, i.e., step 3 and 4 in the getting started guide sec.4.5. But I encounter another problem when I tried to compile the kernel (I wish it be the last problem for me to get started:-), [EMAIL PROTECTED]:/media/hda1/home/zyang1/workdir/lsp/ti-davinci$ make ARCH=arm CROSS_COMPILE=arm_v5t_le- uImage CHK include/linux/version.h UPD include/linux/version.h SYMLINK include/asm -> include/asm-arm HOSTCC scripts/basic/fixdep HOSTCC scripts/basic/split-include HOSTCC scripts/basic/docproc SPLIT include/linux/autoconf.h -> include/config/* HOSTCC scripts/genksyms/genksyms.o SHIPPED scripts/genksyms/lex.c SHIPPED scripts/genksyms/parse.h SHIPPED scripts/genksyms/keywords.c HOSTCC scripts/genksyms/lex.o SHIPPED scripts/genksyms/parse.c HOSTCC scripts/genksyms/parse.o HOSTLD scripts/genksyms/genksyms CC scripts/mod/empty.o/bin/sh: arm_v5t_le-gcc: command not foundmake[2]: *** [scripts/mod/empty.o] Error 127make[1]: *** [scripts/mod] Error 2make: *** [scripts] Error 2

It might be that I compile from kernelkit, and the ubuntu linux root dir is now in /media/hda1, is it? I remember you suggested me to install/copy lsp after running kernelkit. I did not do that, instead, I used my already installed lsp and made a copy to the lsp subdir of workdir, as in step 2 of 4.5, after that I booted from kernelkit from CD and did the above compilation. Not sure if it makes problem. Any more suggestion on tackling it? Thanks a lot.

-Michael



Subject: RE: problem on building a new linux kernel Date: Mon, 12 May 2008 08:27:41 +0100
From: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]; [email protected]


  Hi,
I think that Knoppix by default mounts the hard disks as 'read only'. If you right click on the desktop icon for the disk there should be an option to mount read/write. Failing that you can study 'mount' options and do it manually, something like 'mount -o remount,rw /dev/hda1' assuming your partition is /dev/hda1. I have only ever used the kernelkit with Fedora boxes (when Michael was here doing the courses for us) and they use LVM to manage the partitions which needs manual intervention to start the volume manager so Knoppix can then mount the resulting logical partition. As far as wireless support goes, I have no idea. If the wireless chipset has Linux support (& you had it working in Ubuntu) you may need to do some digging to find which kernel module supports it (do an 'lsmod' on the ubuntu box to get a list). It may just be a case of loading the module manually in Knoppix. There could be a problem if support for your wireless chipset was added recently (that is the support is not in the Knoppix kernel). Regards Phil Q Phil Quiney, Senior Software Engineer
Trinity Convergence
Cambridge Business Park
  Cowley Road
  Cambridge CB4 0WZ, UK
T: +44(0)1223-435536
F: +44(0)1223-435560
  www.trinityconvergence.com

From: YangZhijun [mailto:[EMAIL PROTECTED] Sent: 11 May 2008 10:28 To: Phil Quiney; [email protected] Subject: RE: problem on building a new linux kernel


Hi, Indeed kernelkit seems a good alternative to cross compile the kernel source. I've burnt a bootable CD of kernelkit. But when I booted from CD and tried to use it to compile the kernel source in my hard disk I always got the errors like "Read only file" for those files in the hard disk, and the procedure terminated. It is obvious I might not have the right such as write to the hard disk files, but after I mounted the hda1 device (or my directory in it) to a temporary directory of kernelkit root, I still cannot compile. How could I compile the kernel source in the hard disk with bootable kernelkit CD? And, how could I configure the kernelkit internet configuration so that I can access wireless internet through this OS? Many thanks.
-Michael


Subject: RE: problem on building a new linux kernel Date: Thu, 8 May 2008 09:32:58 +0100
From: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]; [email protected]


    Hi,
There is nothing in my .bashrc file other than adding Java runtime to my PATH. From what I have found on this subject (via google) the 'include_next' appears to be a toolchain problem. In this case it is the host toolchain (ubuntu) that is the cause. Does ubuntu have a second toolchain for building kernels? (I only mention this because Redhat used to ship an (older) gcc for kernel building whilst the newer gcc was for system packages. This was several years ago - it might have been in the transition from gcc 3.x -> 4.x). Here is something you can try.... Michael Opdenacker at Free Electrons does Linux training courses (very good - highly recommended). As part of this he has 'spun' a special version of Knoppix with all the 'fluff' taken out and lots of development tools put in place. If you download his CD image & boot from it you should have a development system that is capable of building a kernel. (The CD has ARM emulators/compilers - all part of the training & makes the training material available as well (creative commons license)). See http://free-electrons.com/community/tools/kernelkit/ Download the latest version 0.6.1. You should be able to build a kernel without touching your ubuntu installation - if it all works out you should be able to install his Knoppix if you want to & then install the Davinci tools/LSP & have a development box up & running really quickly. Regards Phil Q Phil Quiney, Senior Software Engineer
Trinity Convergence
Cambridge Business Park
    Cowley Road
    Cambridge CB4 0WZ, UK
T: +44(0)1223-435536
F: +44(0)1223-435560
    www.trinityconvergence.com

From: YangZhijun [mailto:[EMAIL PROTECTED] Sent: 07 May 2008 22:25 To: Phil Quiney; [email protected] Subject: RE: problem on building a new linux kernel


Thanks, Phil, I checked my /usr/include/limits.h, which seems exactly the same as yours (see attached). The problem is in line 125:26: error: no include path in which to search for limits.h. Probably it is about the notorious '#include_next'. I think you are right - the Ubuntu limits.h is trying to load another file of the same name and it is this file that cannot be found. In our case, (Ubuntu) linux should have a search path list for header files in which the compiler can search for another limits.h in the next head file directory. AFAIK /usr/include and /usr/local/include are two default header file dirs in the search list. Besides these I have to use either command line option (like -I /head/file/dir) or include in the .bashrc like the following C header path to expand the search list,

C_INCLUDE_PATH=/opt/gdbm-1.8.3/include export C_INCLUDE_PATH

Should this thought make sense, since there are so many different limits.h files in the kernel tree, please can you advise me what header path is included in your .bashrc file (as it seems you did not use -I option in the command line) so that I can include that also. Thanks.

Michael



Subject: RE: problem on building a new linux kernel Date: Wed, 7 May 2008 11:37:08 +0100
From: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]; [email protected]


      Hi,
Compiling on the target should be possible but very slow. When on the target you need to remember that you are no longer cross compiling. This does assume that the NFS file system is 'sane' as far as 'gcc' is concerned, it is ceratinly big enough at over 1G (for an embedded system). The only reason for the [EMAIL PROTECTED] linux-2.6.10_mvl401]#. prompt was I happened to be logged into the host where I was preparing a custom set of kernel modules & device files for inclusion into a root filesystem (produced by DevRocket). I need to be root to get the permissions right on the target files. You should be able to build the kernel & modules as non-root although installing the modules requires root permission to chown the files to uid:0 gid:0 before using them. Very rarely do you gain much by re installing in the Linux world. If the machine boots you should be able to add/remove packages with the package management tools that the Linux distribution has. The *buntu series has one of the better tools for doing this - you need the 'package manager' rather than 'add/remove software'. AFAIK it is the same tool with a different 'view' I would fire it up and make sure that you have installed all the relavant 'devel' packages, particularly 'glibc-headers' (that is the Fedora/Redhat name). That should put the host header files under /usr/include. I don't understand why your build is failing - it would seem to be finding the files...in that it references line numbers within limits.h for example. It is the 'no include path' bit I don't get - being that /usr/include is *the* well known path for include files. It could be a partial install of gcc?? Have a look in /usr/include/limits.h to see what it is complaining about. I have attached the Fedora 8 version for comparison - I think you will find the Ubuntu limits.h is trying to load another file of the same name and it is this file that cannot be found. If you decide to switch to Fedora, I would either wait for Fedora 9 to be officially released, use Fedora 8 or given you are effectively building a server try CentOS. Regards Phil Q Phil Quiney, Senior Software Engineer
Trinity Convergence
Cambridge Business Park
      Cowley Road
      Cambridge CB4 0WZ, UK
T: +44(0)1223-435536
F: +44(0)1223-435560
      www.trinityconvergence.com

From: YangZhijun [mailto:[EMAIL PROTECTED] Sent: 07 May 2008 10:43 To: Phil Quiney; [email protected] Subject: RE: problem on building a new linux kernel


Thanks Phil, I checked the hidden files in my /workdir/lsp directory, a copy dir of the MV LSP in my home dir. There are .mvl_cross_compile, .mvl_target_cpu and .mvl_target_installdir already in the dir which contain arm_v5t_le-, arm and arm/v5t_le respectively. I then use


make mrproper It seems this make does some cleaning things all right. But still I got the following errors when I compile,

[EMAIL PROTECTED]:~/workdir/lsp/ti-davinci$ make V=1 davinci_dm355_evm_defconfig make -f scripts/Makefile.build obj=scripts/basic gcc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/basic/fixdep scripts/basic/fixdep.c In file included from scripts/basic/fixdep.c:113: /usr/include/limits.h:125:26: error: no include path in which to search for limits.h In file included from /usr/include/bits/socket.h:31, from /usr/include/sys/socket.h:35, from /usr/include/netinet/in.h:24, from /usr/include/arpa/inet.h:23, from scripts/basic/fixdep.c:115: /usr/include/limits.h:125:26: error: no include path in which to search for limits.h make[1]: *** [scripts/basic/fixdep] Error 1
make: *** [scripts_basic] Error 2

I saw you compiled with a command line prompt like, [EMAIL PROTECTED] linux-2.6.10_mvl401]#. I'm wondering if I should compile in the console emulation window connecting to the EVM board via RS232 with my prompt '[EMAIL PROTECTED]' (i.e., target $ in the guide), and use the workdir which has subdirs of filesys and lsp as the shared file system. But if my gcc package has any bug, then I don't think I can pass compilation even using shared file system. I am using Ubuntu linux 7.04, I did not perceive any mis-operation in my last installation but do you think it help if I re-install ubuntu or another linux such as Fedora 9 Beta? Any suggestions would be appreciated.

Cheers,

Michael


Subject: RE: problem on building a new linux kernel Date: Tue, 6 May 2008 14:11:15 +0100
From: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]; [email protected]


        Hi
Can you do the following at the top of your kernel source tree..... echo 'arm_v5t_le-' > .mvl_cross_compile echo 'arm' > .mvl_target_cpu echo 'arm/v5t_le' > .mvl_target_installdir
        make mrproper
make V=1 davinci_dm355_evm_defconfig The 'echo' commands set up the tree so you no longer need to specify ARCH= & CROSS_COMPILE= options. MV added this to the Makefile so might as well use it. The V=1 increases verbosity of the kernel build. This should give more information as to what is going wrong My guess is there is something wrong with your host tools (that is native gcc for the PC). The host compiler is needed even when cross compiling so that the kernel configuration menus can be built. For reference my kernel tree does this..... [EMAIL PROTECTED] linux-2.6.10_mvl401]# make V=1 davinci_dm355_evm_defconfig make -f scripts/Makefile.build obj=scripts/basic gcc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -I/opt/mv_pro_4.0.1/montavista/pro/bin//../include -o scripts/basic/fixdep scripts/basic/fixdep.c for the file you were having problems with.

        Regards
Phil Q Phil Quiney, Senior Software Engineer
Trinity Convergence
Cambridge Business Park
        Cowley Road
        Cambridge CB4 0WZ, UK
T: +44(0)1223-435536
F: +44(0)1223-435560
        www.trinityconvergence.com

From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of YangZhijun
Sent: 04 May 2008 17:45
To: [email protected] Subject: problem on building a new linux kernel


        Dear All,

When following the getting started guide of DM355 DVEVM to build a new linux kernel, after entering, $ make ARCH=arm CROSS_COMPILE=arm_v5t_le- davinci_dm355_evm_defconfig

I got the following errors,

HOSTCC scripts/basic/fixdepIn file included from scripts/basic/fixdep.c:113:/usr/include/limits.h:125:26: error: no include path in which to search for limits.hIn file included from /usr/include/bits/socket.h:31, from /usr/include/sys/socket.h:35, from /usr/include/netinet/in.h:24, from /usr/include/arpa/inet.h:23, from scripts/basic/fixdep.c:115:/usr/include/limits.h:125:26: error: no include path in which to search for limits.hmake[1]: *** [scripts/basic/fixdep] Error 1make: *** [scripts_basic] Error 2 Any suggestions about this pr oblem? Thanks.
Michael


“七件武器,七种完美” 立刻体验! 用 Windows Live Spaces 展示个性自我,与好友分享生活! 了解更多信息! 用 Windows Live Spaces 展示个性自我,与好友分享生活! 了解更多信息! Windows Live Writer,支持离线撰写博客内容,随时随地想写就写。 立即使用!


用 Windows Live Spaces 展示个性自我,与好友分享生活! 了解更多信息!
_________________________________________________________________
多个邮箱同步管理,live mail客户端万人抢用中
http://get.live.cn/product/mail.html
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to