How to add timezone info to root filesystem using yocto

Recently while debugging some issues we found that we were missing timezone related files into yocto root filesystem, the debugging with strace shown the following error,

open("/usr/share/zoneinfo/UTC", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)

The poky has a recipe for compiling the relevant files at poky/meta/recipes-extended/tzdata/ hence you can use below command to compile it,

bitbake tzdata

Once you have it compiled, you can add this files to the root filesystem by adding into IMAGE_INSTALL as,

IMAGE_INSTALL += “tzdata”

Now, after you boot this newly created root filesystem, we will get following messages at same place where it was failed previously in strace,

open("/etc/localtime", O_RDONLY|O_CLOEXEC) = 16
fstat64(16, {st_mode=S_IFREG|0644, st_size=127, ...}) = 0
fstat64(16, {st_mode=S_IFREG|0644, st_size=127, ...}) = 0
read(16, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\1\0\0\0\0"..., 4096) = 127
_llseek(16, -6, [121], SEEK_CUR)        = 0
read(16, "\nUTC0\n", 4096)              = 6
close(16)                               = 0
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

One Response

  1. Prateek Gupta August 27, 2018

Leave a Reply