# Cross Compiler && Enviremont Set Up
## Architecture:ARM
`export ARCH=arm`
## Cross Compiler:gcc-arm-none-eabi-8-2018-q4-major
`export CROSS_COMPILE=/home/paul/opt/gcc-arm-none-eabi-8-2018-q4-major/bin/arm-none-eabi-`
## config
`make mq_imx_defconfig`
```Makefile=
501 ifeq ($(config-targets),1)
502 # ===========================================================================
503 # *config targets only - make sure prerequisites are updated, and descend
504 # in scripts/kconfig to make the *config target
505
506 # Read arch specific Makefile to set KBUILD_DEFCONFIG as needed.
507 # KBUILD_DEFCONFIG may point out an alternative default configuration
508 # used for 'make defconfig'
509 include arch/$(SRCARCH)/Makefile
510 export KBUILD_DEFCONFIG KBUILD_KCONFIG
511
512 config: scripts_basic outputmakefile FORCE
513 $(Q)$(MAKE) $(build)=scripts/kconfig $@
514
515 %config: scripts_basic outputmakefile FORCE
516 $(Q)$(MAKE) $(build)=scripts/kconfig $@
517
518 else
519 # ===========================================================================
520 # Build targets only - this includes vmlinux, arch specific targets, clean
521 # targets and others. In general all targets except *config targets.
522
523 # If building an external module we do not care about the all: rule
524 # but instead _all depend on modules
PHONY += all
ifeq ($(KBUILD_EXTMOD),)
```
### Log on terminal:
```
HOSTCC scripts/basic/fixdep
HOSTCC scripts/basic/bin2c
HOSTCC scripts/kconfig/conf.o
HOSTCC scripts/kconfig/zconf.tab.o
HOSTLD scripts/kconfig/conf
#
# configuration written to .config
#
```
## compile the `source code root`
`make -j8`