What all should I take care while compiling and running?
Khem Raj
kraj@mvista.com
Tue Nov 8 19:56:00 GMT 2005
Chuck Meade wrote:
>>>>>Hi,
>>>>>I created crosstool for arm-9tdmi-linux-gnu. I compiled a simple program
>>>>>using arm-9tdmi-linux-gnu-gcc.
>>>>>(My target board has already Kernel-2.6.10 and a compiler for older
>>>>>versions of gcc & glibc)
>>>>>
>>>>>I mount: mount -o nolock,rsize=1500,wsize=1500 -t nfs
>>>>>161.85.96.148:/home/pramod/crosstool /mnt/test
>>>>>
>>>>>Ive simply used ./a.out.
>>>>>But its giving " sh:./a.out not found "
>>>>>even when there is compiled a.out in /mnt/test.
>>>>>
>>>>>
>>>>>
>>>>>
>>>> Is the 'x' bit set? Is there a problem with nfs user/group perms?
>>>>
>>>> cheers,
>>>> DaveK
>>>>
>>>>
>>>>
>>>>
>>>I recently saw a problem with the same behavior. The issue is (likely) that
>>>you are using a different compiler and glibc version for your app than the
>>>rest of your target code was built with.
>>>
>>>
>>>
>>>
>>This is what is happening. It is glibc version only which causes these
>>kind of problem
>>if you link your program statically then it should work ok. Have you
>>tried that?
>>
>>
>
>I immediately suspected the tool version problem, and using a consistent
>compiler & glibc fixed this for me. So no, I did not go back and try to
>link statically. I believe that there are other things that could cause
>this that a static link would not fix. Couldn't this be a syscall numbering
>issue, or a binary format issue? Even statically linked, if his kernel
>cannot understand the binary format, it will fail. I don't know how consistent
>syscall numbering is across major tool versions, but if those change, that
>would cause havoc as well.
>
>
if you build glibc with the kernel headers from the kernel sources of
the kernel you are
running on target syscalls should be ok.
>Question to the original poster -- what is the binary format of your a.out
>file? If it truly is in a.out format, then was your kernel configured to handle
>the a.out binary format? Use your cross binutils and objdump your a.out file.
>Try to strace a.out on your target.
>
>You may send me (if it is small, i.e. hello world) your a.out file and I'll
>see if I can tell you anything about it.
>
>Chuck
>
>
>
>
--
Khem Raj <kraj@mvista.com>
MontaVista Software, Inc.
www.mvista.com
------
Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
More information about the crossgcc
mailing list