Creating yocto bitbake recipe using ” devtool add ” command

The devtool add command automatically creates a recipe based on the source tree with which you provide it. Currently, the command has support for the following: Autotools (autoconf and automake) CMake Scons qmake Plain Makefile Out-of-tree kernel module Binary package (i.e. “-b” option) Node.js module Python modules that use setuptools or distutils Apart from binary … Read more

How to resolve : fatal error: curses.h: No such file or directory

Whenever you are trying to do kernel menuconfig very first time after installation of Ubuntu, its chances that you will see the error as below, This error is due to that your ubuntu doesn’t have “ncurses” library installed. Ncurses is required for having menu like user interface onto the terminal.You can read more about ncurses … Read more

What is the difference between elfutils and binutils ?

As per wikipedia, elfutils is mentioned as, “Ulrich Drepper wrote elfutils, to replace GNU Binutils, purely for Linux and with support only for ELF and DWARF” elfutils is a Red Hat project. There is substantial overlap between elfutils (eu-addr2line, eu-elflint, eu-findtextrel, eu-nm, eu-readelf, eu-size, eu-strip, etc.) and binutils (addr2line, nm, readelf, size, strip, objdump, etc.) … Read more

How to resolve error : dtc: command not found

When trying to compile uboot on Ubuntu, we seen the following error, From the error it looks like we are unable to find “dtc” command, which actually is a “device tree compiler” So, we need to install it on ubuntu as, Now, lets verify that dtc is now installed,

How to compile elfutils for x86 based platforms ?

elfutils is a collection of utilities and libraries to read, create and modify ELF binary files, find and handle DWARF debug data, symbols, thread state and stacktraces for processes and core files on GNU/Linux. [ Also READ : What is the difference between elfutils and binutils ? ] Note: During the compilation of elfutils, 0.176 … Read more

Understanding gcc compilation steps : Linux compilation steps

Copy paste the below shell script and execute on your terminal. $ vim understanding_compilation_with_gcc.sh Copy below highlighted code and run the script as, $ bash understanding_compilation_with_gcc.sh ————- code start ——————— #!/bin/bash echo “ For any given input file, the file name suffix determines what kind of compilation is done: file.c C source code that must … Read more

How kernel images are built / compiled

/bin/bash scripts/link-vmlinux.sh arm-linux-gnueabihf-ld -EL -p –no-undefined -X –pic-veneer –build-id LD vmlinux.o scripts/mod/modpost -m -a -o ./Module.symvers -S vmlinux.o GEN .version /bin/bash ./scripts/mkcompile_h include/generated/compile.h \“arm” “y” “” “arm-linux-gnueabihf-gcc -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-dwarf2-cfi-asm -mabi=aapcs-linux -mno-thumb-interwork -mfpu=vfp -funwind-tables -marm -D__LINUX_ARM_ARCH__=6 -march=armv6k -mtune=arm1136j-s -msoft-float -Uarm -fno-delete-null-pointer-checks -O2 –param=allow-store-data-races=0 -Wframe-larger-than=1024 -fno-stack-protector -Wno-unused-but-set-variable -fomit-frame-pointer -fno-var-tracking-assignments … Read more

Cross compiling Linux kernel for Beagleboard

We assume, we are compiling for omap3 beagleboard embedded hardware platform, $ cd /home/devbee $ mkdir beagleboard $ cd beagleboard Clone the kernel $ git clone https://github.com/beagleboard/linux.git Download toolchain $ wget -c https://releases.linaro.org/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz Extract Toolchain $ tar xvf  gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz Now, use the below script to compile and generate uImage, $ vim compile.sh [bash] #!/bin/bash echo "exporting … Read more