Cross compiler for Xilinx Zynq


  My setup:

      Ubuntu 14.04 LTS

      Xilinx SDK 2016.2

      PicoZed SDR

I am trying to build ADI Linux from GITHUB.

When I follow instruction from 

    Building the 2015_R2 release Linux kernel and devicetrees from source [Analog Devices Wiki] 

and setup cross compiler:

  export CROSS_COMPILE=arm-xilinx-linux-gnueabi-

I get "arm-xilinx-linux-gnueabi-gcc not found" during make.

From Xilinx Wiki : 

  Xilinx Wiki - Install Xilinx Tools 

I use the other cross compiler:

   export CROSS_COMPILE=arm-linux-gnueabihf-

I did not get the gcc not found error anymore.  Is it safe to use this new compiler?



  • Hi,

    Should be OK.

    For the kernel it should be safe to use either of them since the kernel does not use floating point internally and does not care about the floating point ABI.

    When building userspace it is important to build all programs and libraries with the same floating point ABI.

    - Lars

  • Hi Lars,

      Using the uImage compiled from arm-linux-gnueabihf-, and replacing the uImage from PicoZed SDR SDcard, I can boot all the way to command prompt.  Does this mean the executables in filesystem are also compiled from arm-linux-gnueabihf-? 





  • Hi,

    Userspace does not have to be compiled with the same compiler. The compiler variant is about the floating point ABI, but since the kernel does not use floating point as part of its ABI it does not matter what compiler variant is used.

    The generated kernel image should be the same for both.

    - Lars