$ mkdir -p ~/workspace/yocto $ cd ~/workspace/yocto |
$ git clone http://git.yoctoproject.org/git/poky $ cd poky $ git checkout -b krogoth origin/krogoth |
$ git clone https://github.com/Xilinx/meta-xilinx.git $ cd meta-xilinx $ git checkout -b krogoth origin/krogoth $ cd .. |
$ source oe-init-build-env |
BBLAYERS ?= " \ /home/user/workspace/yocto/poky/meta \ /home/user/workspace/yocto/poky/meta-poky \ /home/user/workspace/yocto/meta-yocto-bsp \ /home/user/workspace/yocto/meta-xilinx \ " |
# Set target machine to zcu102 MACHINE ??= "zcu102-zynqmp" # Define multilib target require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "armv7athf-neon" # Bundle image as an INITRAM image INITRAMFS_IMAGE = "core-image-minimal" INITRAMFS_IMAGE_BUNDLE = "1" IMAGE_FSTYPES += "cpio.gz" # Specify the 32-bit libraries to be added to all images IMAGE_INSTALL_append = "lib32-glibc lib32-libgcc lib32-libstdc++" |
$ bitbake -c menuconfig linux-xlnx |
$ bitbake core-image-minimal |
#include <stdio.h> int main() { printf("Hello World, the size of long int is %zd\n", sizeof(long int)); return 0; } |
$ aarch64-linux-gnu-gcc -Wall hello_world.c -o hello_world_64b $ arm-linux-gnueabihf-gcc -Wall hello_world.c -o hello_world_32b |