Optimising yocto / bitbake build performance / time using ASSUME_PROVIDED

If you are compiling core-sato-image yocto root filesystem, then you might have observed that it compile lot of development environment ( ubuntu ) specific packages which are required to compile the filesystem. So, if you are compiling the filesystem again and again during the development, it may take lot of time to compile those native packages.

So this can be avoided by adding ASSUME_PROVIDED in the meta/conf/bitbake.conf.
For example, you want to save time on compiling git everytime, since you already have git & uboots mkimage installed on your ubuntu, then you can add an option as,

ASSUME_PROVIDED = "\
    git-native \
    u-boot-mkimage \
    "

As per Yocto project reference manual ASSUME_PROVIDED is defined as,

ASSUME_PROVIDED – Lists recipe names (PN values) BitBake does not attempt to build. Instead, BitBake assumes these recipes have already been built.

In OpenEmbedded-Core, ASSUME_PROVIDED mostly specifies native tools that should not be built. An example is git-native, which when specified, allows for the Git binary from the host to be used rather than building git-native.

Android Android Commands Android Java Applications Application Libraries Bash / Shell Scripts Bluetooth driver Build Frameworks Commands and Packages Core Kernel C Programs Development Environment Setup Documents / Books Errors & Failures File Systems Framebuffer / Display Driver git Go Language Programs Hardware Platforms Home Kernel & Device Drivers Kernel Booting and Porting Linux, OS Concepts and Networking Linux Device Drivers Linux Host, Ubuntu, SysAdmin Linux Kernel Linux Networking Middleware Libraries, HAL NDK / Middleware / HAL Network Driver OS Concepts PHP Procfs Filesystem Programming Languages RaspberryPi Scripting and Automation Search Engine Optimisation ( SEO ) Social Media Socurce Code Management ( SCM ) System Administration, Security Testing and Debugging Uncategorized Userspace Utilities Web design and development Wordpress Yocto / Bitbake / Openembedded

Leave a Reply