zephyr/samples/posix/gettimeofday
Keith Packard 1e5c46df3d samples: Switch from NEWLIB_LIBC to REQUIRES_FULL_LIBC
Instead of forcing use of NEWLIB_LIBC, select any available complete C
library implementation. Add CONFIG_REQUIRES_FLOAT_PRINTF and adjust
CONFIG_LIBC_MALLOC_ARENA_SIZE as needed.

Signed-off-by: Keith Packard <keithp@keithp.com>
2023-10-25 08:32:06 +02:00
..
src samples: posix: gettimeofday: include time.h 2023-01-11 09:41:29 +01:00
CMakeLists.txt include: Prefix includes to use a scope 2022-04-08 19:03:32 +02:00
Makefile.host samples net/posix: Rename old Makefiles and clarify READMEs 2023-10-20 15:01:42 +02:00
prj.conf samples: Switch from NEWLIB_LIBC to REQUIRES_FULL_LIBC 2023-10-25 08:32:06 +02:00
README.rst samples net/posix: Rename old Makefiles and clarify READMEs 2023-10-20 15:01:42 +02:00
sample.yaml samples: Switch from NEWLIB_LIBC to REQUIRES_FULL_LIBC 2023-10-25 08:32:06 +02:00

.. _posix-gettimeofday-sample:

POSIX gettimeofday() with clock initialization over SNTP
########################################################

Overview
********

This sample application demonstrates using the POSIX gettimeofday()
function to display the absolute wall clock time and local time every
second. At system startup, the current time is queried using the SNTP
networking protocol, enabled by setting the
:kconfig:option:`CONFIG_NET_CONFIG_CLOCK_SNTP_INIT` and
:kconfig:option:`CONFIG_NET_CONFIG_SNTP_INIT_SERVER` options.

Requirements
************

- :ref:`networking_with_host`
- or, a board with hardware networking
- NAT/routing should be set up to allow connections to the Internet
- DNS server should be available on the host to resolve domain names

Building and Running
********************

This project outputs to the console.  It can be built and executed
on QEMU as follows:

.. zephyr-app-commands::
   :zephyr-app: samples/posix/gettimeofday
   :host-os: unix
   :board: qemu_x86
   :goals: run
   :compact:

For comparison, to build directly for your host OS if it is POSIX compliant (for ex. Linux):

.. code-block:: console

   make -f Makefile.host