arm-linux-gcc command not found

Mohan Saini
Hi All.
I am getting an error arm-linux-gcc command not found while i am giving
command make zImage for mini2440. I have already given correct path as
export PATH=$PATH:/opt/FriendlyArm/toolschain/4.4.3/bin. it shows correct
path when i type echo $PATH but don't know what is the issue please help.

genpix
may be you forgot ~ ?
is it really 
/opt/FriendlyArm/toolschain/4.4.3/bin ?
is it possible that it's actually at
~/opt/FriendlyArm/toolschain/4.4.3/bin ?

did you try to execute just "arm-linux-gcc" ?

Mohan Saini
Yes i have tried with arm-linux-gcc it shows command not found!!

Reggie
find where it actually is and put that in the export PATH= command instead?

Did you unpack the toolchain as root?

Juergen Beisert
Check if you have installed the correct system libraries. Run the "ldd"
command on the "/opt/FriendlyArm/toolschain/4.4.3/bin/arm-linux-gcc"
executable and see what it tells you.
I guess a 32 bit versus 64 bit issue.

Mohan Saini
Hi Sir,
        The previous issue has been resolved i was not unpacking toolchain
in root. But now i am getting error while i am making zImage as.

 include/linux/math64.h: In function 'div_u64_rem':
include/linux/math64.h:43: error: '__LINUX_ARM_ARCH__' undeclared (first
use in this function)
include/linux/math64.h:43: error: (Each undeclared identifier is reported
only once
include/linux/math64.h:43: error: for each function it appears in.)
In file included from /tmp/linux-2.6.32.2/arch/arm/include/asm/page.h:26,
                 from include/linux/mm_types.h:15,
                 from include/linux/sched.h:63,
                 from arch/arm/kernel/asm-offsets.c:13:
/tmp/linux-2.6.32.2/arch/arm/include/asm/glue.h:119:2: error: #error
Unknown data abort handler type
/tmp/linux-2.6.32.2/arch/arm/include/asm/glue.h:160:2: error: #error
Unknown prefetch abort handler type
In file included from include/linux/mm_types.h:15,
                 from include/linux/sched.h:63,
                 from arch/arm/kernel/asm-offsets.c:13:
/tmp/linux-2.6.32.2/arch/arm/include/asm/page.h:116:2: error: #error
Unknown user operations model
make[1]: *** [arch/arm/kernel/asm-offsets.s] Error 1
make: *** [prepare0] Error 2
now why this error is there?

Prateek Sahu
Mohan Saini,
could you please tell me how you solved that toolchain problem as you said
in your last comment here.
I am facing with same problem:arm-linux-gcc command not found.
I may also say that i did not find such a file in the necessary place.
So i eould be grateful if by anychance you could zip and mail me the folder
that contains the -gcc xecutable file.

Reggie
export ARCH=arm

These are all relatively standard things that you might expect to set
before cross compiling a kernel, they should be very simple to find via
google.

http://billforums.station51.net/viewtopic.php?f=4&t=20

Prateek Sahu
Thanks,
i did it and
now i am getting a new error.

prateek@ubuntu:/host/xilinx_example/ZYNQ_TRD_HOME/u-boot-xlnx$ make
zynq_zc70xConfiguring for zynq_zc70x board...
make
make[1]: Entering directory
`/host/xilinx_example/ZYNQ_TRD_HOME/u-boot-xlnx'
Generating include/autoconf.mk
cc1: error: unrecognized command line option "-mno-unaligned-access"
cc1: error: unrecognized command line option "-mno-unaligned-access"
cc1: error: unrecognized command line option "-fstack-usage"
Generating include/autoconf.mk.dep
cc1: error: unrecognized command line option "-mno-unaligned-access"
cc1: error: unrecognized command line option "-mno-unaligned-access"
cc1: error: unrecognized command line option "-mno-unaligned-access"
cc1: error: unrecognized command line option "-mno-unaligned-access"
cc1: error: unrecognized command line option "-fstack-usage"
make[1]: Leaving directory `/host/xilinx_example/ZYNQ_TRD_HOME/u-boot-xlnx'
make[1]: Entering directory
`/host/xilinx_example/ZYNQ_TRD_HOME/u-boot-xlnx'
arm-linux-gcc -DDO_DEPS_ONLY \
    -g  -Os   -fno-common -ffixed-r8 -msoft-float  -fno-strict-aliasing
-mno-unaligned-access -D__KERNEL__
-I/host/xilinx_example/ZYNQ_TRD_HOME/u-boot-xlnx/include -fno-builtin
-ffreestanding -nostdinc -isystem
/home/prateek/Downloads/opt/FriendlyARM/toolschain/4.4.3/bin/../lib/gcc/arm-none
-linux-gnueabi/4.4.3/include
-pipe  -DCONFIG_ARM -D__ARM__ -marm -mno-thumb-interwork -mabi=aapcs-linux
-march=armv7-a -mno-unaligned-access
-I/host/xilinx_example/ZYNQ_TRD_HOME/u-boot-xlnx/board/xilinx/common -Wall
-Wstrict-prototypes -fno-stack-protector -Wno-format-nonliteral
-Wno-format-security -fstack-usage   \
    -o lib/asm-offsets.s lib/asm-offsets.c -c -S
cc1: error: unrecognized command line option "-mno-unaligned-access"
cc1: error: unrecognized command line option "-mno-unaligned-access"
cc1: error: unrecognized command line option "-fstack-usage"
make[1]: *** [lib/asm-offsets.s] Error 1
make[1]: Leaving directory `/host/xilinx_example/ZYNQ_TRD_HOME/u-boot-xlnx'
make: *** [zynq_zc70x] Error 2


can anyone help me with this?

Reggie
There are so many things wrong with whatever it is you're trying to do.

Try giving more information about what you're attempting.  We've gone from
compiling a kernel for the 2440 to compiling uboot (I think) for something
else, a xilinx chip, at least that's what it looks like.

Prateek Sahu
i was following this link
http://www.wiki.xilinx.com/Zynq+Base+TRD+14.4
for setting up xilinx zynq board.
when i got stuck with the linux kernel make directory (7th section of the
link)
while using this command $make ARCH=arm uImage

while searching for that i came across this wiki page
http://www.wiki.xilinx.com/Build+Kernel
In this,under the heading linux for zynq ap soc
make ARCH=arm UIMAGE_LOADADDR=0x8000 uImage
command prompted error of Ygcc being not found

I searched and set the PATH for it correctly, and then when i tried 'make'
i got this error
prateek@ubuntu:/host/xilinx_example/ZYNQ_TRD_HOME/linux-xlnx$ make ARCH=arm
UIMAGE_LOADADDR=0x8000 uImage
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
  CC      kernel/bounds.s
cc1: error: unrecognized command line option ‘-mlittle-endian’
cc1: error: unrecognized command line option ‘-mno-thumb-interwork’
kernel/bounds.c:1:0: error: unknown ABI (aapcs-linux) for -mabi= switch
kernel/bounds.c:1:0: error: bad value (armv5t) for -march= switch
make[1]: *** [kernel/bounds.s] Error 1
make: *** [prepare0] Error 2

while searching for this error i came across this video
http://www.youtube.com/watch?v=wlXbeqtW0hI
at 3:07 there is a set of instructions, for the command $make ARCH=arm
uImage
i got the error of arm-linux-gcc not found.which i posted it here.
later,before your reply,i got a .tar.gz file containing those executables.
so i cross-compiled that folder and set the path properly.
then when i tried
$make command,i got the error that i had just posted.
does this make any sense now??

Prateek Sahu
i am sorry,i have missed a part.
after the Ygcc error when i set the path and tried make i got this error
too
prateek@ubuntu:/host/xilinx_example/ZYNQ_TRD_HOME/linux-xlnx$ make
make[1]: Nothing to be done for `all'.
make[1]: Nothing to be done for `relocs'.
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
  UPD     include/generated/utsrelease.h
  CALL    scripts/checksyscalls.sh
  CHK     include/generated/compile.h
  SKIPPED include/generated/compile.h
  CC      init/version.o
  LD      init/built-in.o
  PASYMS  arch/x86/realmode/rm/pasyms.h
  LDS     arch/x86/realmode/rm/realmode.lds
  LD      arch/x86/realmode/rm/realmode.elf
  RELOCS  arch/x86/realmode/rm/realmode.relocs
  OBJCOPY arch/x86/realmode/rm/realmode.bin
  AS      arch/x86/realmode/rmpiggy.o
  LD      arch/x86/realmode/built-in.o
  VDSOSYM arch/x86/vdso/vdso32-int80-syms.lds
  VDSOSYM arch/x86/vdso/vdso32-sysenter-syms.lds
  VDSOSYM arch/x86/vdso/vdso32-syms.lds
  LD      arch/x86/vdso/built-in.o
  LD      arch/x86/built-in.o
  CC      kernel/sys.o
  CC      kernel/module.o
  CHK     kernel/config_data.h
  LD      kernel/built-in.o
  CC      drivers/char/xilinx_devcfg.o
drivers/char/xilinx_devcfg.c: In function ‘xdevcfg_reset_pl’:
drivers/char/xilinx_devcfg.c:162:2: warning: passing argument 1 of
‘__readl’ makes pointer from integer without a cast [enabled by default]
/host/xilinx_example/ZYNQ_TRD_HOME/linux-xlnx/arch/x86/include/asm/io.h:59:1:
note: expected ‘const volatile void *’ but argument is of type ‘u32’
drivers/char/xilinx_devcfg.c:162:2: warning: passing argument 2 of
‘__writel’ makes pointer from integer without a cast [enabled by default]
/host/xilinx_example/ZYNQ_TRD_HOME/linux-xlnx/arch/x86/include/asm/io.h:67:1:
note: expected ‘volatile void *’ but argument is of type ‘u32’
drivers/char/xilinx_devcfg.c:164:2: warning: passing argument 1 of
‘__readl’ makes pointer from integer without a cast [enabled by default]
/host/xilinx_example/ZYNQ_TRD_HOME/linux-xlnx/arch/x86/include/asm/io.h:59:1:
note: expected ‘const volatile void *’ but argument is of type ‘u32’
drivers/char/xilinx_devcfg.c:166:2: warning: passing argument 1 of
‘__readl’ makes pointer from integer without a cast [enabled by default]
/host/xilinx_example/ZYNQ_TRD_HOME/linux-xlnx/arch/x86/include/asm/io.h:59:1:
note: expected ‘const volatile void *’ but argument is of type ‘u32’
drivers/char/xilinx_devcfg.c:166:2: warning: passing argument 2 of
‘__writel’ makes pointer from integer without a cast [enabled by default]
/host/xilinx_example/ZYNQ_TRD_HOME/linux-xlnx/arch/x86/include/asm/io.h:67:1:
note: expected ‘volatile void *’ but argument is of type ‘u32’
drivers/char/xilinx_devcfg.c:168:2: warning: passing argument 1 of
‘__readl’ makes pointer from integer without a cast [enabled by default]
/host/xilinx_example/ZYNQ_TRD_HOME/linux-xlnx/arch/x86/include/asm/io.h:59:1:
note: expected ‘const volatile void *’ but argument is of type ‘u32’
drivers/char/xilinx_devcfg.c:170:2: warning: passing argument 1 of
‘__readl’ makes pointer from integer without a cast [enabled by default]
/host/xilinx_example/ZYNQ_TRD_HOME/linux-xlnx/arch/x86/include/asm/io.h:59:1:
note: expected ‘const volatile void *’ but argument is of type ‘u32’
drivers/char/xilinx_devcfg.c:170:2: warning: passing argument 2 of
‘__writel’ makes pointer from integer without a cast [enabled by default]
/host/xilinx_example/ZYNQ_TRD_HOME/linux-xlnx/arch/x86/include/asm/io.h:67:1:
note: expected ‘volatile void *’ but argument is of type ‘u32’
drivers/char/xilinx_devcfg.c:172:2: warning: passing argument 1 of
‘__readl’ makes pointer from integer without a cast [enabled by default]
/host/xilinx_example/ZYNQ_TRD_HOME/linux-xlnx/arch/x86/include/asm/io.h:59:1:
note: expected ‘const volatile void *’ but argument is of type ‘u32’
drivers/char/xilinx_devcfg.c: In function ‘xdevcfg_drv_probe’:
drivers/char/xilinx_devcfg.c:1503:2: error: implicit declaration of
function ‘of_get_next_parent’ [-Werror=implicit-function-declaration]
drivers/char/xilinx_devcfg.c:1503:5: warning: assignment makes pointer from
integer without a cast [enabled by default]
drivers/char/xilinx_devcfg.c:1504:5: warning: assignment makes pointer from
integer without a cast [enabled by default]
cc1: some warnings being treated as errors
make[2]: *** [drivers/char/xilinx_devcfg.o] Error 1
make[1]: *** [drivers/char] Error 2
make: *** [drivers] Error 2
 it has something to do with xilinx_devcfg.c file. i have looked into that
error with great detail and even tried out measures but with no avail.and
hence i proceeded with the $make ARCh=arm UIMAGE_LOADADDR=0x8000 uImage
command and proceeded with te error list

Juergen Beisert
Why do you ask questions about Xilinx? Here we are talking about
FriendlyARM hardware...

Prateek Sahu
I just came across an error whose google results brought me to this page.
when reported,one of the contributers asked to explain what exactly was i
trying to do.hence i enumerated my problems,which has to deal with xilinx
too.i am sorry,i am a newbie and hadnt really thought that i could just
post FriendlyARM queries.i was just hoping for help here.

srinivas
hai all,
I have arm-linux-gcc-4.4.3.tgz and linux-2.6.32.2-mini2440_20110413.tgz.

pc@pc-virtual-machine:~/arm/arm/linux-2.6.32.2$ make ARCH=arm
CROSS_COMPILE=arm-linux-gcc menuconfig
scripts/kconfig/mconf arch/arm/Kconfig


*** End of Linux kernel configuration.
*** Execute 'make' to build the kernel or try 'make help'.

pc@pc-virtual-machine:~/arm/arm/linux-2.6.32.2$ make ARCH=arm
CROSS_COMPILE=arm-linux-gcc 
make: arm-linux-gccgcc: Command not found
  CHK     include/linux/version.h
make[1]: `include/asm-arm/mach-types.h' is up to date.
  CHK     include/linux/utsrelease.h
  SYMLINK include/asm -> include/asm-arm
  CC      kernel/bounds.s
/bin/sh: 1: arm-linux-gccgcc: not found
make[1]: *** [kernel/bounds.s] Error 127
make: *** [prepare0] Error 2
pc@pc-virtual-machine:~/arm/arm/linux-2.6.32.2$ i am getting this
error,please tell me anyone how to install arm-linux-gcc and how to compile
and build image for the above mentioned kernel.

Juergen Beisert
Read the error message carefully: "arm-linux-gccgcc" :)

Try with "CROSS_COMPILE=arm-linux-" instead.

srinivas
I tried as you said it's compiled.For building image this is the command 
make ARCH=arm CROSS_COMPILE=arm-linux- zImage. 
I think there is a another method like export ? what is that method.
Thanking you.

srinivas
sorry sorry.. I am getting below error
drivers/input/touchscreen/eeti_ts.c:64: error: implicit declaration of
function 'irq_to_gpio'
make[3]: *** [drivers/input/touchscreen/eeti_ts.o] Error 1
make[2]: *** [drivers/input/touchscreen] Error 2
make[1]: *** [drivers/input] Error 2
make: *** [drivers] Error 2
what is this error,how to solve it.

Juergen Beisert
Read about how "bash" is working

srinivas
please tell me the process of cross compilation and building image for arm
for kernel linux-2.6.32.2 with arm-linux-gcc.

Juergen Beisert
Sorry, I only can help you with my own kernels for the Mini2440. I never
worked with the linux-2.6.32.2 you mentioned.

srinivas
I think kernel is not matter,the above process i mentioned is same for all
linux kernels.please tell me about that process with any linux kernel with
arm-linux-gcc cross compiler.I am using ubuntu 12.04 os.so please help.

Juergen Beisert
> [...] the above process i mentioned is same for all linux kernels

Your are right. The correct process for all kernels is to just fix the
error.

Harsh Pandey
It can be because you have not set the toolchain path to the bashrc file.
I would suggest you follow this link:
 https://developer.ridgerun.com/wiki/index.php/Code_Sourcery_ARM_toolchai...
Very briefly explained to install the toolchain to the required path along
with all the dependecies.