automatic DPDK test reports
 help / color / mirror / Atom feed
* |FAILURE| dpdk-next-net-brcm| 664c2350a9| Intel-compilation
@ 2024-11-15 22:42 sys_stv
  0 siblings, 0 replies; 5+ messages in thread
From: sys_stv @ 2024-11-15 22:42 UTC (permalink / raw)
  To: test-report, thomas; +Cc: dpdk_sw_eng, npg.sw.core.tools.prc

[-- Attachment #1: Type: text/plain, Size: 276795 bytes --]


Test-Label: Intel-compilation
Test-Status: FAILURE
_Compilation issues_


commit 664c2350a92549c0754f1ead6514a3dc626d089a
Author: Ajit Khaparde <ajit.khaparde@broadcom.com>
Date:   Thu Oct 3 18:40:15 2024 -0700

    net/bnxt: remove unnecessary ifdef

DPDK git Repo: dpdk-next-net-brcm 


Meson Build Summary: 25 Builds Done, 4 Successful, 21 Failures, 0 Blocked

+------------------+------------+--------------+------------+------------+-----------+----------+------------+
| os               | gcc-static | clang-static | icc-static | gcc-shared | gcc-debug | document | gcc-16byte |
+------------------+------------+--------------+------------+------------+-----------+----------+------------+
| OpenAnolis8.9-64 | fail       |              |            |            |           |          |            |
| FreeBSD14-64     | fail       | fail         |            | pass       | fail      |          |            |
| RHEL94-64        | fail       | fail         |            | pass       | fail      |          |            |
| SUSE15-64        | fail       | fail         |            |            |           |          |            |
| AzureLinux3.0-64 | fail       |              |            |            |           |          |            |
| UB2404-32        | fail       |              |            |            |           |          |            |
| RHEL8.10-64      | fail       |              |            |            |           |          |            |
| UB2404-64N       | fail       |              |            | pass       |           |          |            |
| UB2404-64        | fail       | fail         |            |            |           | pass     | fail       |
| RHEL94-64Rt      | fail       |              |            |            |           |          |            |
| UB2410-64        | fail       |              |            |            |           |          |            |
| FC40-64          | fail       | fail         |            |            |           |          |            |
| UB2404-64Rt      | fail       |              |            |            |           |          |            |
+------------------+------------+--------------+------------+------------+-----------+----------+------------+

Comments: 
Because of DPDK bug (https://bugs.dpdk.org/show_bug.cgi?id=928),
All the dpdk-next-* branch add `Ddisable_drivers=event/cnxk` option when build with ICC complier. 
 
Test environment and configuration as below:


OS: OpenAnolis8.9-64
	Kernel Version: 5.10.134-16.2.an8.x86_64
	GCC Version: gcc (GCC) 8.5.0 20210514 (Anolis 8.5.0-22.0.1)
	Clang Version: 15.0.7 (Anolis 15.0.7-1.0.3.module+an8.8.0+11135+e398acfc)
	x86_64-native-linuxapp-gcc

OS: FreeBSD14-64
	Kernel Version: 14.1-RELEASE
	GCC Version: gcc (FreeBSD Ports Collection) 13.2.0
	Clang Version: 18.1.5 (https://github.com/llvm/llvm-project.git llvmorg-18.1.5-0-g617a15a9eac9)
	x86_64-native-bsdapp-gcc
	x86_64-native-bsdapp-clang
	x86_64-native-bsdapp-gcc+shared
	x86_64-native-bsdapp-gcc+debug

OS: RHEL94-64
	Kernel Version: 5.14.0-427.13.1.el9_4.x86_64
	GCC Version: gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3)
	Clang Version: 17.0.6 (Red Hat, Inc. 17.0.6-5.el9)
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-gcc+shared
	x86_64-native-linuxapp-gcc+debug

OS: SUSE15-64
	Kernel Version: 6.4.0-150600.21-default
	GCC Version: gcc (SUSE Linux) 7.5.0
	Clang Version: 17.0.6
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-gcc

OS: AzureLinux3.0-64
	Kernel Version: 6.6.47.1-1.azl3
	GCC Version: gcc (GCC) 13.2.0
	Clang Version: 18.1.2
	x86_64-native-linuxapp-gcc

OS: UB2404-32
	Kernel Version: 6.8.0-41-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	i686-native-linuxapp-gcc

OS: RHEL8.10-64
	Kernel Version: 4.18.0-553.el8_10.x86_64
	GCC Version: gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-21)
	Clang Version: 17.0.6 (Red Hat 17.0.6-1.module+el8.10.0+20808+e12784c0)
	x86_64-native-linuxapp-gcc

OS: UB2404-64N
	Kernel Version: 6.10.8-061008-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-gcc+shared

OS: UB2404-64
	Kernel Version: 6.8.0-41-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc+16byte
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-doc

OS: RHEL94-64Rt
	Kernel Version: 5.14.0-427.13.1.el9_4.x86_64+rt
	GCC Version: gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3)
	Clang Version: 17.0.6 (Red Hat, Inc. 17.0.6-5.el9)
	x86_64-native-linuxapp-gcc

OS: UB2410-64
	Kernel Version: 6.11.0-8-generic
	GCC Version: gcc (Ubuntu 14.2.0-4ubuntu2) 14.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc

OS: FC40-64
	Kernel Version: 6.8.5-301.fc40.x86_64
	GCC Version: gcc (GCC) 14.0.1 20240411 (Red Hat 14.0.1-0)
	Clang Version: 18.1.1 (Fedora 18.1.1-1.fc40)
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang

OS: UB2404-64Rt
	Kernel Version: 6.8.0-rt8
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc



*Build Failed #1:
OS: OpenAnolis8.9-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^~~~~~~~~
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3151/3200] Generating examples/ntb/commands_hdr with a custom command (wrapped by meson to capture output)
[3152/3200] Linking target examples/dpdk-hotplug_mp
[3153/3200] Generating examples/multi_process/simple_mp/commands_hdr with a custom command (wrapped by meson to capture output)
[3154/3200] Compiling C object examples/dpdk-mp_client.p/multi_process_client_server_mp_mp_client_client.c.o
[3155/3200] Linking target examples/dpdk-mp_server
[3156/3200] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3157/3200] Linking target examples/dpdk-l3fwd-power
[3158/3200] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3159/3200] Linking target examples/dpdk-symmetric_mp
ninja: build stopped




*Build Failed #2:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mno-avx512f -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'print_clock_info':
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'clock_path_delay':
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'ptp_adjust_servo':
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function 'parse_drsp':
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of 'clock_path_delay' from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of 'ptp_adjust_servo' from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'parse_ptp_frames':
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of 'print_clock_info' from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[1934/1974] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_main.c.o
[1935/1974] Linking target app/dpdk-test
[1936/1974] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[1937/1974] Linking target examples/dpdk-symmetric_mp
[1938/1974] Linking target examples/dpdk-mp_server
[1939/1974] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[1940/1974] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[1941/1974] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[1942/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
ninja: build stopped




*Build Failed #3:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[1945/1991] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[1946/1991] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_main.c.o
[1947/1991] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[1948/1991] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_commands.c.o
[1949/1991] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_main.c.o
[1950/1991] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[1951/1991] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[1952/1991] Compiling C object app/dpdk-test.p/test_test_ring.c.o
[1953/1991] Compiling C object app/dpdk-test.p/test_test_ring_perf.c.o
ninja: build stopped




*Build Failed #4:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-gcc+debug
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mno-avx512f -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'print_clock_info':
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'clock_path_delay':
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'ptp_adjust_servo':
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function 'parse_drsp':
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of 'clock_path_delay' from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of 'ptp_adjust_servo' from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'parse_ptp_frames':
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of 'print_clock_info' from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[1934/1974] Linking target examples/dpdk-l3fwd
[1935/1974] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[1936/1974] Linking target examples/dpdk-l3fwd-graph
[1937/1974] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[1938/1974] Linking target examples/dpdk-hotplug_mp
[1939/1974] Linking target examples/dpdk-mp_client
[1940/1974] Linking target examples/dpdk-simple_mp
[1941/1974] Linking target examples/dpdk-symmetric_mp
[1942/1974] Linking target examples/dpdk-mp_server
ninja: build stopped




*Build Failed #5:
OS: RHEL94-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3150/3190] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3151/3190] Linking target examples/dpdk-mp_client
[3152/3190] Linking target examples/dpdk-packet_ordering
[3153/3190] Linking target examples/dpdk-ntb
[3154/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3155/3190] Linking target examples/dpdk-hotplug_mp
[3156/3190] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3157/3190] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3158/3190] Linking target examples/dpdk-simple_mp
ninja: build stopped




*Build Failed #6:
OS: RHEL94-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3108/3151] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3109/3151] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3110/3151] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[3111/3151] Compiling C object examples/dpdk-efd_server.p/server_node_efd_efd_server_args.c.o
[3112/3151] Linking target examples/dpdk-pipeline
[3113/3151] Compiling C object examples/dpdk-vhost.p/vhost_virtio_net.c.o
[3114/3151] Linking target examples/dpdk-ntb
[3115/3151] Linking target examples/dpdk-mp_client
[3116/3151] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #7:
OS: RHEL94-64
Target: x86_64-native-linuxapp-gcc+debug
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3143/3186] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3144/3186] Linking target examples/dpdk-hotplug_mp
[3145/3186] Linking target examples/dpdk-mp_server
[3146/3186] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3147/3186] Linking target examples/dpdk-simple_mp
[3148/3186] Linking target examples/dpdk-mp_client
[3149/3186] Linking target examples/dpdk-symmetric_mp
[3150/3186] Linking target examples/dpdk-pipeline
[3151/3186] Linking target examples/dpdk-packet_ordering
ninja: build stopped




*Build Failed #8:
OS: SUSE15-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3133/3182] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3134/3182] Linking target examples/dpdk-ntb
[3135/3182] Linking target examples/dpdk-mp_server
[3136/3182] Linking target examples/dpdk-mp_client
[3137/3182] Compiling C object examples/dpdk-pipeline.p/pipeline_obj.c.o
[3138/3182] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3139/3182] Linking target examples/dpdk-symmetric_mp
[3140/3182] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3141/3182] Linking target app/dpdk-test
ninja: build stopped




*Build Failed #9:
OS: SUSE15-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^
../examples/ptpclient/ptpclient.c:314:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
[3134/3180] Linking target examples/dpdk-simple_mp
[3135/3180] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3136/3180] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3137/3180] Linking target examples/dpdk-mp_client
[3138/3180] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3139/3180] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3140/3180] Linking target examples/dpdk-symmetric_mp
[3141/3180] Linking target examples/dpdk-hotplug_mp
[3142/3180] Compiling C object app/dpdk-test.p/test_test_ring_perf.c.o
ninja: build stopped




*Build Failed #10:
OS: AzureLinux3.0-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3162/3200] Linking target examples/dpdk-symmetric_mp
[3163/3200] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3164/3200] Linking target examples/dpdk-pipeline
[3165/3200] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[3166/3200] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3167/3200] Compiling C object examples/dpdk-vhost.p/vhost_main.c.o
[3168/3200] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3169/3200] Linking target examples/dpdk-qos_meter
[3170/3200] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
ninja: build stopped




*Build Failed #11:
OS: UB2404-32
Target: i686-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -Wno-pointer-to-int-cast -D_GNU_SOURCE -m32 -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[2323/2367] Linking target examples/dpdk-qos_meter
[2324/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[2325/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[2326/2367] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[2327/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[2328/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[2329/2367] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[2330/2367] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[2331/2367] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #12:
OS: RHEL8.10-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^~~~~~~~~
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3120/3165] Linking target examples/dpdk-hotplug_mp
[3121/3165] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3122/3165] Linking target examples/dpdk-symmetric_mp
[3123/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3124/3165] Linking target examples/dpdk-simple_mp
[3125/3165] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3126/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3127/3165] Linking target examples/dpdk-ntb
[3128/3165] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #13:
OS: UB2404-64N
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3300/3355] Linking target examples/dpdk-l3fwd
[3301/3355] Linking target examples/dpdk-mp_client
[3302/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3303/3355] Linking target examples/dpdk-hotplug_mp
[3304/3355] Linking target examples/dpdk-l3fwd-power
[3305/3355] Linking target examples/dpdk-link_status_interrupt
[3306/3355] Linking target examples/dpdk-mp_server
[3307/3355] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3308/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #14:
OS: UB2404-64
Target: x86_64-native-linuxapp-gcc+16byte
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -DRTE_LIBRTE_I40E_16BYTE_RX_DESC -DRTE_LIBRTE_ICE_16BYTE_RX_DESC -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3317/3359] Linking target examples/dpdk-packet_ordering
[3318/3359] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3319/3359] Linking target examples/dpdk-mp_server
[3320/3359] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3321/3359] Linking target examples/dpdk-symmetric_mp
[3322/3359] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[3323/3359] Linking target examples/dpdk-simple_mp
[3324/3359] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3325/3359] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
ninja: build stopped




*Build Failed #15:
OS: UB2404-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3317/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3318/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3319/3355] Linking target examples/dpdk-qos_meter
[3320/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3321/3355] Linking target examples/dpdk-simple_mp
[3322/3355] Linking target examples/dpdk-pipeline
[3323/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3324/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3325/3355] Linking target examples/dpdk-ntb
ninja: build stopped




*Build Failed #16:
OS: UB2404-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3307/3355] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[3308/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[3309/3355] Linking target examples/dpdk-hotplug_mp
[3310/3355] Generating examples/ntb/commands_hdr with a custom command (wrapped by meson to capture output)
[3311/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3312/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3313/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3314/3355] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3315/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #17:
OS: RHEL94-64Rt
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3148/3190] Compiling C object examples/dpdk-timer.p/timer_main.c.o
[3149/3190] Linking target examples/dpdk-mp_client
[3150/3190] Linking target examples/dpdk-pipeline
[3151/3190] Linking target examples/dpdk-simple_mp
[3152/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3153/3190] Linking target examples/dpdk-l3fwd-power
[3154/3190] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3155/3190] Linking target examples/dpdk-ntb
[3156/3190] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #18:
OS: UB2410-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Wincompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Wincompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Wincompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3267/3341] Compiling C object examples/dpdk-l3fwd.p/l3fwd_main.c.o
[3268/3341] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_args.c.o
[3269/3341] Compiling C object examples/dpdk-l3fwd-graph.p/l3fwd-graph_main.c.o
[3270/3341] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_init.c.o
[3271/3341] Linking target examples/dpdk-l2fwd-event
[3272/3341] Linking target examples/dpdk-l2fwd-keepalive
[3273/3341] Linking target examples/dpdk-l2fwd-macsec
[3274/3341] Compiling C object examples/dpdk-mp_client.p/multi_process_client_server_mp_mp_client_client.c.o
[3275/3341] Compiling C object examples/dpdk-l3fwd-power.p/l3fwd-power_main.c.o
ninja: build stopped




*Build Failed #19:
OS: FC40-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Wincompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Wincompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Wincompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3306/3345] Linking target examples/dpdk-symmetric_mp
[3307/3345] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3308/3345] Linking target examples/dpdk-ntb
[3309/3345] Linking target examples/dpdk-efd_node
[3310/3345] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3311/3345] Compiling C object examples/dpdk-vmdq_dcb.p/vmdq_dcb_main.c.o
[3312/3345] Linking target examples/dpdk-simple_mp
[3313/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3314/3345] Compiling C object examples/dpdk-vhost.p/vhost_main.c.o
ninja: build stopped




*Build Failed #20:
OS: FC40-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3304/3345] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3305/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3306/3345] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3307/3345] Linking target examples/dpdk-mp_client
[3308/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3309/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3310/3345] Linking target examples/dpdk-symmetric_mp
[3311/3345] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3312/3345] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #21:
OS: UB2404-64Rt
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3278/3345] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_commands.c.o
[3279/3345] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_init.c.o
[3280/3345] Compiling C object examples/dpdk-mp_client.p/multi_process_client_server_mp_mp_client_client.c.o
[3281/3345] Compiling C object examples/dpdk-l3fwd-graph.p/l3fwd-graph_main.c.o
[3282/3345] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_args.c.o
[3283/3345] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_main.c.o
[3284/3345] Compiling C object examples/dpdk-link_status_interrupt.p/link_status_interrupt_main.c.o
[3285/3345] Linking target examples/dpdk-l3fwd-power
[3286/3345] Linking target examples/dpdk-l3fwd
ninja: build stopped


DPDK STV team

^ permalink raw reply	[flat|nested] 5+ messages in thread
* |FAILURE| dpdk-next-net-brcm| 664c2350a9| Intel-compilation
@ 2024-11-14 22:46 sys_stv
  0 siblings, 0 replies; 5+ messages in thread
From: sys_stv @ 2024-11-14 22:46 UTC (permalink / raw)
  To: test-report, thomas; +Cc: dpdk_sw_eng, npg.sw.core.tools.prc

[-- Attachment #1: Type: text/plain, Size: 276784 bytes --]


Test-Label: Intel-compilation
Test-Status: FAILURE
_Compilation issues_


commit 664c2350a92549c0754f1ead6514a3dc626d089a
Author: Ajit Khaparde <ajit.khaparde@broadcom.com>
Date:   Thu Oct 3 18:40:15 2024 -0700

    net/bnxt: remove unnecessary ifdef

DPDK git Repo: dpdk-next-net-brcm 


Meson Build Summary: 25 Builds Done, 4 Successful, 21 Failures, 0 Blocked

+------------------+------------+--------------+------------+------------+-----------+----------+------------+
| os               | gcc-static | clang-static | icc-static | gcc-shared | gcc-debug | document | gcc-16byte |
+------------------+------------+--------------+------------+------------+-----------+----------+------------+
| OpenAnolis8.9-64 | fail       |              |            |            |           |          |            |
| FreeBSD14-64     | fail       | fail         |            | pass       | fail      |          |            |
| RHEL94-64        | fail       | fail         |            | pass       | fail      |          |            |
| SUSE15-64        | fail       | fail         |            |            |           |          |            |
| AzureLinux3.0-64 | fail       |              |            |            |           |          |            |
| UB2404-32        | fail       |              |            |            |           |          |            |
| RHEL8.10-64      | fail       |              |            |            |           |          |            |
| UB2404-64N       | fail       |              |            | pass       |           |          |            |
| UB2404-64        | fail       | fail         |            |            |           | pass     | fail       |
| RHEL94-64Rt      | fail       |              |            |            |           |          |            |
| UB2410-64        | fail       |              |            |            |           |          |            |
| FC40-64          | fail       | fail         |            |            |           |          |            |
| UB2404-64Rt      | fail       |              |            |            |           |          |            |
+------------------+------------+--------------+------------+------------+-----------+----------+------------+

Comments: 
Because of DPDK bug (https://bugs.dpdk.org/show_bug.cgi?id=928),
All the dpdk-next-* branch add `Ddisable_drivers=event/cnxk` option when build with ICC complier. 
 
Test environment and configuration as below:


OS: OpenAnolis8.9-64
	Kernel Version: 5.10.134-16.2.an8.x86_64
	GCC Version: gcc (GCC) 8.5.0 20210514 (Anolis 8.5.0-22.0.1)
	Clang Version: 15.0.7 (Anolis 15.0.7-1.0.3.module+an8.8.0+11135+e398acfc)
	x86_64-native-linuxapp-gcc

OS: FreeBSD14-64
	Kernel Version: 14.1-RELEASE
	GCC Version: gcc (FreeBSD Ports Collection) 13.2.0
	Clang Version: 18.1.5 (https://github.com/llvm/llvm-project.git llvmorg-18.1.5-0-g617a15a9eac9)
	x86_64-native-bsdapp-gcc
	x86_64-native-bsdapp-clang
	x86_64-native-bsdapp-gcc+shared
	x86_64-native-bsdapp-gcc+debug

OS: RHEL94-64
	Kernel Version: 5.14.0-427.13.1.el9_4.x86_64
	GCC Version: gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3)
	Clang Version: 17.0.6 (Red Hat, Inc. 17.0.6-5.el9)
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-gcc+shared
	x86_64-native-linuxapp-gcc+debug

OS: SUSE15-64
	Kernel Version: 6.4.0-150600.21-default
	GCC Version: gcc (SUSE Linux) 7.5.0
	Clang Version: 17.0.6
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-gcc

OS: AzureLinux3.0-64
	Kernel Version: 6.6.47.1-1.azl3
	GCC Version: gcc (GCC) 13.2.0
	Clang Version: 18.1.2
	x86_64-native-linuxapp-gcc

OS: UB2404-32
	Kernel Version: 6.8.0-41-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	i686-native-linuxapp-gcc

OS: RHEL8.10-64
	Kernel Version: 4.18.0-553.el8_10.x86_64
	GCC Version: gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-21)
	Clang Version: 17.0.6 (Red Hat 17.0.6-1.module+el8.10.0+20808+e12784c0)
	x86_64-native-linuxapp-gcc

OS: UB2404-64N
	Kernel Version: 6.10.8-061008-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-gcc+shared

OS: UB2404-64
	Kernel Version: 6.8.0-41-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc+16byte
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-doc

OS: RHEL94-64Rt
	Kernel Version: 5.14.0-427.13.1.el9_4.x86_64+rt
	GCC Version: gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3)
	Clang Version: 17.0.6 (Red Hat, Inc. 17.0.6-5.el9)
	x86_64-native-linuxapp-gcc

OS: UB2410-64
	Kernel Version: 6.11.0-8-generic
	GCC Version: gcc (Ubuntu 14.2.0-4ubuntu2) 14.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc

OS: FC40-64
	Kernel Version: 6.8.5-301.fc40.x86_64
	GCC Version: gcc (GCC) 14.0.1 20240411 (Red Hat 14.0.1-0)
	Clang Version: 18.1.1 (Fedora 18.1.1-1.fc40)
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang

OS: UB2404-64Rt
	Kernel Version: 6.8.0-rt8
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc



*Build Failed #1:
OS: OpenAnolis8.9-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^~~~~~~~~
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3154/3200] Linking target examples/dpdk-mp_server
[3155/3200] Generating examples/multi_process/simple_mp/commands_hdr with a custom command (wrapped by meson to capture output)
[3156/3200] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3157/3200] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3158/3200] Linking target examples/dpdk-symmetric_mp
[3159/3200] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3160/3200] Linking target examples/dpdk-l3fwd-power
[3161/3200] Linking target examples/dpdk-mp_client
[3162/3200] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #2:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mno-avx512f -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'print_clock_info':
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'clock_path_delay':
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'ptp_adjust_servo':
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function 'parse_drsp':
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of 'clock_path_delay' from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of 'ptp_adjust_servo' from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'parse_ptp_frames':
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of 'print_clock_info' from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[1931/1974] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[1932/1974] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_commands.c.o
[1933/1974] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_main.c.o
[1934/1974] Linking target examples/dpdk-mp_server
[1935/1974] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[1936/1974] Linking target examples/dpdk-symmetric_mp
[1937/1974] Compiling C object app/dpdk-test.p/test_test_ring.c.o
[1938/1974] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[1939/1974] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #3:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[1946/1991] Linking target examples/dpdk-symmetric_mp
[1947/1991] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_main.c.o
[1948/1991] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_commands.c.o
[1949/1991] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[1950/1991] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[1951/1991] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[1952/1991] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[1953/1991] Compiling C object app/dpdk-test.p/test_test_ring_perf.c.o
[1954/1991] Compiling C object app/dpdk-test.p/test_test_ring.c.o
ninja: build stopped




*Build Failed #4:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-gcc+debug
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mno-avx512f -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'print_clock_info':
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'clock_path_delay':
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'ptp_adjust_servo':
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function 'parse_drsp':
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of 'clock_path_delay' from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of 'ptp_adjust_servo' from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'parse_ptp_frames':
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of 'print_clock_info' from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[1936/1974] Linking target examples/dpdk-mp_client
[1937/1974] Linking target examples/dpdk-mp_server
[1938/1974] Linking target examples/dpdk-l3fwd-graph
[1939/1974] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[1940/1974] Linking target examples/dpdk-simple_mp
[1941/1974] Linking target examples/dpdk-hotplug_mp
[1942/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[1943/1974] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[1944/1974] Linking target examples/dpdk-symmetric_mp
ninja: build stopped




*Build Failed #5:
OS: RHEL94-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3148/3190] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3149/3190] Linking target examples/dpdk-mp_client
[3150/3190] Linking target examples/dpdk-l3fwd-power
[3151/3190] Compiling C object examples/dpdk-pipeline.p/pipeline_thread.c.o
[3152/3190] Linking target examples/dpdk-hotplug_mp
[3153/3190] Linking target examples/dpdk-ntb
[3154/3190] Linking target examples/dpdk-packet_ordering
[3155/3190] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3156/3190] Linking target examples/dpdk-simple_mp
ninja: build stopped




*Build Failed #6:
OS: RHEL94-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3111/3151] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3112/3151] Compiling C object examples/dpdk-efd_server.p/server_node_efd_efd_server_args.c.o
[3113/3151] Linking target examples/dpdk-pipeline
[3114/3151] Linking target examples/dpdk-symmetric_mp
[3115/3151] Compiling C object examples/dpdk-vhost.p/vhost_virtio_net.c.o
[3116/3151] Linking target examples/dpdk-ntb
[3117/3151] Linking target examples/dpdk-efd_node
[3118/3151] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3119/3151] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #7:
OS: RHEL94-64
Target: x86_64-native-linuxapp-gcc+debug
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3141/3186] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3142/3186] Linking target examples/dpdk-l3fwd
[3143/3186] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3144/3186] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[3145/3186] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3146/3186] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3147/3186] Linking target examples/dpdk-mp_client
[3148/3186] Linking target examples/dpdk-simple_mp
[3149/3186] Linking target examples/dpdk-pipeline
ninja: build stopped




*Build Failed #8:
OS: SUSE15-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3134/3182] Linking target examples/dpdk-mp_client
[3135/3182] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3136/3182] Linking target examples/dpdk-ntb
[3137/3182] Linking target examples/dpdk-symmetric_mp
[3138/3182] Compiling C object examples/dpdk-pipeline.p/pipeline_obj.c.o
[3139/3182] Linking target examples/dpdk-mp_server
[3140/3182] Linking target app/dpdk-test
[3141/3182] Linking target examples/dpdk-simple_mp
[3142/3182] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #9:
OS: SUSE15-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^
../examples/ptpclient/ptpclient.c:314:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
[3134/3180] Linking target examples/dpdk-simple_mp
[3135/3180] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3136/3180] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3137/3180] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3138/3180] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3139/3180] Linking target examples/dpdk-symmetric_mp
[3140/3180] Linking target examples/dpdk-mp_client
[3141/3180] Linking target examples/dpdk-hotplug_mp
[3142/3180] Compiling C object app/dpdk-test.p/test_test_ring_perf.c.o
ninja: build stopped




*Build Failed #10:
OS: AzureLinux3.0-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3162/3200] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3163/3200] Linking target examples/dpdk-pipeline
[3164/3200] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[3165/3200] Linking target examples/dpdk-symmetric_mp
[3166/3200] Linking target examples/dpdk-qos_meter
[3167/3200] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3168/3200] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3169/3200] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3170/3200] Compiling C object examples/dpdk-vhost.p/vhost_main.c.o
ninja: build stopped




*Build Failed #11:
OS: UB2404-32
Target: i686-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -Wno-pointer-to-int-cast -D_GNU_SOURCE -m32 -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[2325/2367] Linking target examples/dpdk-symmetric_mp
[2326/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[2327/2367] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[2328/2367] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[2329/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[2330/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[2331/2367] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[2332/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[2333/2367] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #12:
OS: RHEL8.10-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^~~~~~~~~
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3122/3165] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3123/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3124/3165] Linking target examples/dpdk-simple_mp
[3125/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3126/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3127/3165] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3128/3165] Linking target examples/dpdk-ntb
[3129/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3130/3165] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #13:
OS: UB2404-64N
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3301/3355] Linking target examples/dpdk-mp_client
[3302/3355] Linking target examples/dpdk-link_status_interrupt
[3303/3355] Linking target examples/dpdk-hotplug_mp
[3304/3355] Linking target examples/dpdk-mp_server
[3305/3355] Linking target examples/dpdk-l3fwd-power
[3306/3355] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3307/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3308/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3309/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #14:
OS: UB2404-64
Target: x86_64-native-linuxapp-gcc+16byte
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -DRTE_LIBRTE_I40E_16BYTE_RX_DESC -DRTE_LIBRTE_ICE_16BYTE_RX_DESC -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3315/3359] Compiling C object examples/dpdk-qos_meter.p/qos_meter_rte_policer.c.o
[3316/3359] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3317/3359] Linking target examples/dpdk-mp_server
[3318/3359] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3319/3359] Linking target examples/dpdk-packet_ordering
[3320/3359] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[3321/3359] Linking target examples/dpdk-symmetric_mp
[3322/3359] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3323/3359] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
ninja: build stopped




*Build Failed #15:
OS: UB2404-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3318/3355] Linking target examples/dpdk-qos_meter
[3319/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3320/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3321/3355] Compiling C object examples/dpdk-timer.p/timer_main.c.o
[3322/3355] Linking target examples/dpdk-simple_mp
[3323/3355] Linking target examples/dpdk-pipeline
[3324/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3325/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3326/3355] Linking target examples/dpdk-ntb
ninja: build stopped




*Build Failed #16:
OS: UB2404-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3307/3355] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[3308/3355] Linking target examples/dpdk-hotplug_mp
[3309/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[3310/3355] Generating examples/ntb/commands_hdr with a custom command (wrapped by meson to capture output)
[3311/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3312/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3313/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3314/3355] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3315/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #17:
OS: RHEL94-64Rt
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3148/3190] Compiling C object examples/dpdk-timer.p/timer_main.c.o
[3149/3190] Linking target examples/dpdk-mp_client
[3150/3190] Linking target examples/dpdk-pipeline
[3151/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3152/3190] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3153/3190] Linking target examples/dpdk-simple_mp
[3154/3190] Linking target examples/dpdk-l3fwd-power
[3155/3190] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3156/3190] Linking target examples/dpdk-ntb
ninja: build stopped




*Build Failed #18:
OS: UB2410-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Wincompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Wincompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Wincompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3263/3341] Compiling C object examples/dpdk-l3fwd-power.p/l3fwd-power_perf_core.c.o
[3264/3341] Compiling C object examples/dpdk-l2fwd-macsec.p/l2fwd-macsec_main.c.o
[3265/3341] Linking target examples/dpdk-l2fwd-jobstats
[3266/3341] Compiling C object examples/dpdk-l3fwd.p/l3fwd_l3fwd_lpm.c.o
[3267/3341] Compiling C object examples/dpdk-l3fwd-graph.p/l3fwd-graph_main.c.o
[3268/3341] Compiling C object examples/dpdk-l3fwd.p/l3fwd_main.c.o
[3269/3341] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_args.c.o
[3270/3341] Linking target examples/dpdk-l2fwd-event
[3271/3341] Linking target examples/dpdk-l2fwd-keepalive
ninja: build stopped




*Build Failed #19:
OS: FC40-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Wincompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Wincompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Wincompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3304/3345] Linking target examples/dpdk-qos_meter
[3305/3345] Linking target examples/dpdk-symmetric_mp
[3306/3345] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3307/3345] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3308/3345] Linking target examples/dpdk-ntb
[3309/3345] Linking target examples/dpdk-efd_node
[3310/3345] Compiling C object examples/dpdk-vmdq_dcb.p/vmdq_dcb_main.c.o
[3311/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3312/3345] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #20:
OS: FC40-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3305/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3306/3345] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3307/3345] Linking target examples/dpdk-mp_client
[3308/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3309/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3310/3345] Linking target examples/dpdk-symmetric_mp
[3311/3345] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3312/3345] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3313/3345] Linking target examples/dpdk-simple_mp
ninja: build stopped




*Build Failed #21:
OS: UB2404-64Rt
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3280/3345] Generating examples/multi_process/simple_mp/commands_hdr with a custom command (wrapped by meson to capture output)
[3281/3345] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_init.c.o
[3282/3345] Compiling C object examples/dpdk-link_status_interrupt.p/link_status_interrupt_main.c.o
[3283/3345] Compiling C object examples/dpdk-mp_client.p/multi_process_client_server_mp_mp_client_client.c.o
[3284/3345] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_commands.c.o
[3285/3345] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_main.c.o
[3286/3345] Linking target examples/dpdk-l3fwd-graph
[3287/3345] Linking target examples/dpdk-l3fwd-power
[3288/3345] Linking target examples/dpdk-l3fwd
ninja: build stopped


DPDK STV team

^ permalink raw reply	[flat|nested] 5+ messages in thread
* |FAILURE| dpdk-next-net-brcm| 664c2350a9| Intel-compilation
@ 2024-11-13 22:40 sys_stv
  0 siblings, 0 replies; 5+ messages in thread
From: sys_stv @ 2024-11-13 22:40 UTC (permalink / raw)
  To: test-report, thomas; +Cc: dpdk_sw_eng, npg.sw.core.tools.prc

[-- Attachment #1: Type: text/plain, Size: 276829 bytes --]


Test-Label: Intel-compilation
Test-Status: FAILURE
_Compilation issues_


commit 664c2350a92549c0754f1ead6514a3dc626d089a
Author: Ajit Khaparde <ajit.khaparde@broadcom.com>
Date:   Thu Oct 3 18:40:15 2024 -0700

    net/bnxt: remove unnecessary ifdef

DPDK git Repo: dpdk-next-net-brcm 


Meson Build Summary: 25 Builds Done, 4 Successful, 21 Failures, 0 Blocked

+------------------+------------+--------------+------------+------------+-----------+----------+------------+
| os               | gcc-static | clang-static | icc-static | gcc-shared | gcc-debug | document | gcc-16byte |
+------------------+------------+--------------+------------+------------+-----------+----------+------------+
| OpenAnolis8.9-64 | fail       |              |            |            |           |          |            |
| FreeBSD14-64     | fail       | fail         |            | pass       | fail      |          |            |
| RHEL94-64        | fail       | fail         |            | pass       | fail      |          |            |
| SUSE15-64        | fail       | fail         |            |            |           |          |            |
| AzureLinux3.0-64 | fail       |              |            |            |           |          |            |
| UB2404-32        | fail       |              |            |            |           |          |            |
| RHEL8.10-64      | fail       |              |            |            |           |          |            |
| UB2404-64N       | fail       |              |            | pass       |           |          |            |
| UB2404-64        | fail       | fail         |            |            |           | pass     | fail       |
| RHEL94-64Rt      | fail       |              |            |            |           |          |            |
| UB2410-64        | fail       |              |            |            |           |          |            |
| FC40-64          | fail       | fail         |            |            |           |          |            |
| UB2404-64Rt      | fail       |              |            |            |           |          |            |
+------------------+------------+--------------+------------+------------+-----------+----------+------------+

Comments: 
Because of DPDK bug (https://bugs.dpdk.org/show_bug.cgi?id=928),
All the dpdk-next-* branch add `Ddisable_drivers=event/cnxk` option when build with ICC complier. 
 
Test environment and configuration as below:


OS: OpenAnolis8.9-64
	Kernel Version: 5.10.134-16.2.an8.x86_64
	GCC Version: gcc (GCC) 8.5.0 20210514 (Anolis 8.5.0-22.0.1)
	Clang Version: 15.0.7 (Anolis 15.0.7-1.0.3.module+an8.8.0+11135+e398acfc)
	x86_64-native-linuxapp-gcc

OS: FreeBSD14-64
	Kernel Version: 14.1-RELEASE
	GCC Version: gcc (FreeBSD Ports Collection) 13.2.0
	Clang Version: 18.1.5 (https://github.com/llvm/llvm-project.git llvmorg-18.1.5-0-g617a15a9eac9)
	x86_64-native-bsdapp-gcc
	x86_64-native-bsdapp-clang
	x86_64-native-bsdapp-gcc+shared
	x86_64-native-bsdapp-gcc+debug

OS: RHEL94-64
	Kernel Version: 5.14.0-427.13.1.el9_4.x86_64
	GCC Version: gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3)
	Clang Version: 17.0.6 (Red Hat, Inc. 17.0.6-5.el9)
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-gcc+shared
	x86_64-native-linuxapp-gcc+debug

OS: SUSE15-64
	Kernel Version: 6.4.0-150600.21-default
	GCC Version: gcc (SUSE Linux) 7.5.0
	Clang Version: 17.0.6
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-gcc

OS: AzureLinux3.0-64
	Kernel Version: 6.6.47.1-1.azl3
	GCC Version: gcc (GCC) 13.2.0
	Clang Version: 18.1.2
	x86_64-native-linuxapp-gcc

OS: UB2404-32
	Kernel Version: 6.8.0-41-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	i686-native-linuxapp-gcc

OS: RHEL8.10-64
	Kernel Version: 4.18.0-553.el8_10.x86_64
	GCC Version: gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-21)
	Clang Version: 17.0.6 (Red Hat 17.0.6-1.module+el8.10.0+20808+e12784c0)
	x86_64-native-linuxapp-gcc

OS: UB2404-64N
	Kernel Version: 6.10.8-061008-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-gcc+shared

OS: UB2404-64
	Kernel Version: 6.8.0-41-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc+16byte
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-doc

OS: RHEL94-64Rt
	Kernel Version: 5.14.0-427.13.1.el9_4.x86_64+rt
	GCC Version: gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3)
	Clang Version: 17.0.6 (Red Hat, Inc. 17.0.6-5.el9)
	x86_64-native-linuxapp-gcc

OS: UB2410-64
	Kernel Version: 6.11.0-8-generic
	GCC Version: gcc (Ubuntu 14.2.0-4ubuntu2) 14.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc

OS: FC40-64
	Kernel Version: 6.8.5-301.fc40.x86_64
	GCC Version: gcc (GCC) 14.0.1 20240411 (Red Hat 14.0.1-0)
	Clang Version: 18.1.1 (Fedora 18.1.1-1.fc40)
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang

OS: UB2404-64Rt
	Kernel Version: 6.8.0-rt8
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc



*Build Failed #1:
OS: OpenAnolis8.9-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^~~~~~~~~
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3155/3200] Linking target examples/dpdk-hotplug_mp
[3156/3200] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3157/3200] Linking target examples/dpdk-symmetric_mp
[3158/3200] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3159/3200] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3160/3200] Linking target examples/dpdk-l3fwd-power
[3161/3200] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3162/3200] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3163/3200] Linking target examples/dpdk-mp_client
ninja: build stopped




*Build Failed #2:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mno-avx512f -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'print_clock_info':
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'clock_path_delay':
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'ptp_adjust_servo':
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function 'parse_drsp':
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of 'clock_path_delay' from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of 'ptp_adjust_servo' from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'parse_ptp_frames':
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of 'print_clock_info' from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[1938/1974] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[1939/1974] Linking target examples/dpdk-symmetric_mp
[1940/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[1941/1974] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[1942/1974] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[1943/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[1944/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[1945/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[1946/1974] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #3:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[1945/1991] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[1946/1991] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_commands.c.o
[1947/1991] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_main.c.o
[1948/1991] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[1949/1991] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[1950/1991] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_main.c.o
[1951/1991] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[1952/1991] Compiling C object app/dpdk-test.p/test_test_ring_perf.c.o
[1953/1991] Compiling C object app/dpdk-test.p/test_test_ring.c.o
ninja: build stopped




*Build Failed #4:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-gcc+debug
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mno-avx512f -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'print_clock_info':
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'clock_path_delay':
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'ptp_adjust_servo':
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function 'parse_drsp':
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of 'clock_path_delay' from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of 'ptp_adjust_servo' from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'parse_ptp_frames':
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of 'print_clock_info' from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[1928/1974] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[1929/1974] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_commands.c.o
[1930/1974] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[1931/1974] Linking target examples/dpdk-link_status_interrupt
[1932/1974] Linking target examples/dpdk-l3fwd
[1933/1974] Linking target examples/dpdk-mp_client
[1934/1974] Linking target examples/dpdk-l3fwd-graph
[1935/1974] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[1936/1974] Linking target examples/dpdk-mp_server
ninja: build stopped




*Build Failed #5:
OS: RHEL94-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3151/3190] Linking target examples/dpdk-packet_ordering
[3152/3190] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3153/3190] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3154/3190] Linking target examples/dpdk-mp_client
[3155/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3156/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3157/3190] Linking target examples/dpdk-hotplug_mp
[3158/3190] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3159/3190] Linking target examples/dpdk-simple_mp
ninja: build stopped




*Build Failed #6:
OS: RHEL94-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3111/3151] Linking target examples/dpdk-ntb
[3112/3151] Compiling C object examples/dpdk-efd_server.p/server_node_efd_efd_server_args.c.o
[3113/3151] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3114/3151] Linking target examples/dpdk-pipeline
[3115/3151] Linking target examples/dpdk-symmetric_mp
[3116/3151] Compiling C object examples/dpdk-vhost.p/vhost_virtio_net.c.o
[3117/3151] Linking target examples/dpdk-efd_node
[3118/3151] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3119/3151] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #7:
OS: RHEL94-64
Target: x86_64-native-linuxapp-gcc+debug
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3142/3186] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3143/3186] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3144/3186] Linking target examples/dpdk-link_status_interrupt
[3145/3186] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3146/3186] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3147/3186] Linking target examples/dpdk-mp_client
[3148/3186] Linking target examples/dpdk-simple_mp
[3149/3186] Linking target examples/dpdk-symmetric_mp
[3150/3186] Linking target examples/dpdk-pipeline
ninja: build stopped




*Build Failed #8:
OS: SUSE15-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3134/3182] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3135/3182] Linking target examples/dpdk-ntb
[3136/3182] Linking target examples/dpdk-mp_client
[3137/3182] Linking target examples/dpdk-mp_server
[3138/3182] Linking target examples/dpdk-symmetric_mp
[3139/3182] Compiling C object examples/dpdk-pipeline.p/pipeline_obj.c.o
[3140/3182] Linking target app/dpdk-test
[3141/3182] Linking target examples/dpdk-simple_mp
[3142/3182] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #9:
OS: SUSE15-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^
../examples/ptpclient/ptpclient.c:314:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
[3134/3180] Linking target examples/dpdk-simple_mp
[3135/3180] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3136/3180] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3137/3180] Linking target examples/dpdk-mp_client
[3138/3180] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3139/3180] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3140/3180] Linking target examples/dpdk-symmetric_mp
[3141/3180] Linking target examples/dpdk-hotplug_mp
[3142/3180] Compiling C object app/dpdk-test.p/test_test_ring_perf.c.o
ninja: build stopped




*Build Failed #10:
OS: AzureLinux3.0-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3162/3200] Linking target examples/dpdk-pipeline
[3163/3200] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3164/3200] Linking target examples/dpdk-symmetric_mp
[3165/3200] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[3166/3200] Linking target examples/dpdk-qos_meter
[3167/3200] Compiling C object examples/dpdk-vhost.p/vhost_main.c.o
[3168/3200] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3169/3200] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3170/3200] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
ninja: build stopped




*Build Failed #11:
OS: UB2404-32
Target: i686-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -Wno-pointer-to-int-cast -D_GNU_SOURCE -m32 -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[2322/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[2323/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[2324/2367] Compiling C object examples/dpdk-pipeline.p/pipeline_obj.c.o
[2325/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[2326/2367] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[2327/2367] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[2328/2367] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[2329/2367] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[2330/2367] Linking target examples/dpdk-qos_meter
ninja: build stopped




*Build Failed #12:
OS: RHEL8.10-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^~~~~~~~~
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3121/3165] Linking target examples/dpdk-simple_mp
[3122/3165] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3123/3165] Linking target examples/dpdk-hotplug_mp
[3124/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3125/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3126/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3127/3165] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3128/3165] Linking target examples/dpdk-ntb
[3129/3165] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #13:
OS: UB2404-64N
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3304/3355] Linking target examples/dpdk-hotplug_mp
[3305/3355] Compiling C object examples/dpdk-pipeline.p/pipeline_main.c.o
[3306/3355] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3307/3355] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[3308/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3309/3355] Linking target examples/dpdk-mp_server
[3310/3355] Linking target examples/dpdk-l3fwd-power
[3311/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3312/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #14:
OS: UB2404-64
Target: x86_64-native-linuxapp-gcc+16byte
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -DRTE_LIBRTE_I40E_16BYTE_RX_DESC -DRTE_LIBRTE_ICE_16BYTE_RX_DESC -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3312/3359] Generating examples/ntb/commands_hdr with a custom command (wrapped by meson to capture output)
[3313/3359] Linking target examples/dpdk-link_status_interrupt
[3314/3359] Linking target examples/dpdk-mp_server
[3315/3359] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3316/3359] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[3317/3359] Linking target examples/dpdk-hotplug_mp
[3318/3359] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3319/3359] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3320/3359] Linking target examples/dpdk-symmetric_mp
ninja: build stopped




*Build Failed #15:
OS: UB2404-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3318/3355] Linking target examples/dpdk-qos_meter
[3319/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3320/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3321/3355] Linking target examples/dpdk-simple_mp
[3322/3355] Linking target examples/dpdk-pipeline
[3323/3355] Compiling C object examples/dpdk-timer.p/timer_main.c.o
[3324/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3325/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3326/3355] Linking target examples/dpdk-ntb
ninja: build stopped




*Build Failed #16:
OS: UB2404-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3308/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[3309/3355] Generating examples/ntb/commands_hdr with a custom command (wrapped by meson to capture output)
[3310/3355] Linking target examples/dpdk-hotplug_mp
[3311/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3312/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3313/3355] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3314/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3315/3355] Linking target examples/dpdk-symmetric_mp
[3316/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #17:
OS: RHEL94-64Rt
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3148/3190] Linking target examples/dpdk-pipeline
[3149/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3150/3190] Linking target examples/dpdk-simple_mp
[3151/3190] Linking target examples/dpdk-l3fwd-power
[3152/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3153/3190] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3154/3190] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3155/3190] Linking target examples/dpdk-ntb
[3156/3190] Linking target examples/dpdk-mp_client
ninja: build stopped




*Build Failed #18:
OS: UB2410-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Wincompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Wincompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Wincompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3267/3341] Compiling C object examples/dpdk-l3fwd.p/l3fwd_l3fwd_fib.c.o
[3268/3341] Linking target examples/dpdk-l2fwd-event
[3269/3341] Compiling C object examples/dpdk-l3fwd-graph.p/l3fwd-graph_main.c.o
[3270/3341] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_args.c.o
[3271/3341] Linking target examples/dpdk-l2fwd-keepalive
[3272/3341] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_init.c.o
[3273/3341] Linking target examples/dpdk-l2fwd-macsec
[3274/3341] Compiling C object examples/dpdk-mp_client.p/multi_process_client_server_mp_mp_client_client.c.o
[3275/3341] Compiling C object examples/dpdk-l3fwd-power.p/l3fwd-power_main.c.o
ninja: build stopped




*Build Failed #19:
OS: FC40-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Wincompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Wincompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Wincompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3306/3345] Linking target examples/dpdk-qos_meter
[3307/3345] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3308/3345] Linking target examples/dpdk-ntb
[3309/3345] Linking target examples/dpdk-efd_node
[3310/3345] Linking target examples/dpdk-simple_mp
[3311/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3312/3345] Compiling C object examples/dpdk-vmdq_dcb.p/vmdq_dcb_main.c.o
[3313/3345] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3314/3345] Compiling C object examples/dpdk-vhost.p/vhost_main.c.o
ninja: build stopped




*Build Failed #20:
OS: FC40-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3305/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3306/3345] Linking target examples/dpdk-mp_client
[3307/3345] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3308/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3309/3345] Linking target examples/dpdk-symmetric_mp
[3310/3345] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3311/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3312/3345] Linking target examples/dpdk-simple_mp
[3313/3345] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #21:
OS: UB2404-64Rt
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3286/3345] Linking target examples/dpdk-l3fwd
[3287/3345] Linking target examples/dpdk-l3fwd-power
[3288/3345] Generating examples/ntb/commands_hdr with a custom command (wrapped by meson to capture output)
[3289/3345] Linking target examples/dpdk-l3fwd-graph
[3290/3345] Linking target examples/dpdk-mp_client
[3291/3345] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_main.c.o
[3292/3345] Linking target examples/dpdk-link_status_interrupt
[3293/3345] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[3294/3345] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
ninja: build stopped


DPDK STV team

^ permalink raw reply	[flat|nested] 5+ messages in thread
* |FAILURE| dpdk-next-net-brcm| 664c2350a9| Intel-compilation
@ 2024-11-13  9:46 sys_stv
  0 siblings, 0 replies; 5+ messages in thread
From: sys_stv @ 2024-11-13  9:46 UTC (permalink / raw)
  To: test-report, thomas; +Cc: dpdk_sw_eng, npg.sw.core.tools.prc

[-- Attachment #1: Type: text/plain, Size: 276799 bytes --]


Test-Label: Intel-compilation
Test-Status: FAILURE
_Compilation issues_


commit 664c2350a92549c0754f1ead6514a3dc626d089a
Author: Ajit Khaparde <ajit.khaparde@broadcom.com>
Date:   Thu Oct 3 18:40:15 2024 -0700

    net/bnxt: remove unnecessary ifdef

DPDK git Repo: dpdk-next-net-brcm 


Meson Build Summary: 25 Builds Done, 4 Successful, 21 Failures, 0 Blocked

+------------------+------------+--------------+------------+------------+-----------+----------+------------+
| os               | gcc-static | clang-static | icc-static | gcc-shared | gcc-debug | document | gcc-16byte |
+------------------+------------+--------------+------------+------------+-----------+----------+------------+
| OpenAnolis8.9-64 | fail       |              |            |            |           |          |            |
| FreeBSD14-64     | fail       | fail         |            | pass       | fail      |          |            |
| RHEL94-64        | fail       | fail         |            | pass       | fail      |          |            |
| SUSE15-64        | fail       | fail         |            |            |           |          |            |
| AzureLinux3.0-64 | fail       |              |            |            |           |          |            |
| UB2404-32        | fail       |              |            |            |           |          |            |
| RHEL8.10-64      | fail       |              |            |            |           |          |            |
| UB2404-64N       | fail       |              |            | pass       |           |          |            |
| UB2404-64        | fail       | fail         |            |            |           | pass     | fail       |
| RHEL94-64Rt      | fail       |              |            |            |           |          |            |
| UB2410-64        | fail       |              |            |            |           |          |            |
| FC40-64          | fail       | fail         |            |            |           |          |            |
| UB2404-64Rt      | fail       |              |            |            |           |          |            |
+------------------+------------+--------------+------------+------------+-----------+----------+------------+

Comments: 
Because of DPDK bug (https://bugs.dpdk.org/show_bug.cgi?id=928),
All the dpdk-next-* branch add `Ddisable_drivers=event/cnxk` option when build with ICC complier. 
 
Test environment and configuration as below:


OS: OpenAnolis8.9-64
	Kernel Version: 5.10.134-16.2.an8.x86_64
	GCC Version: gcc (GCC) 8.5.0 20210514 (Anolis 8.5.0-22.0.1)
	Clang Version: 15.0.7 (Anolis 15.0.7-1.0.3.module+an8.8.0+11135+e398acfc)
	x86_64-native-linuxapp-gcc

OS: FreeBSD14-64
	Kernel Version: 14.1-RELEASE
	GCC Version: gcc (FreeBSD Ports Collection) 13.2.0
	Clang Version: 18.1.5 (https://github.com/llvm/llvm-project.git llvmorg-18.1.5-0-g617a15a9eac9)
	x86_64-native-bsdapp-gcc
	x86_64-native-bsdapp-clang
	x86_64-native-bsdapp-gcc+shared
	x86_64-native-bsdapp-gcc+debug

OS: RHEL94-64
	Kernel Version: 5.14.0-427.13.1.el9_4.x86_64
	GCC Version: gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3)
	Clang Version: 17.0.6 (Red Hat, Inc. 17.0.6-5.el9)
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-gcc+shared
	x86_64-native-linuxapp-gcc+debug

OS: SUSE15-64
	Kernel Version: 6.4.0-150600.21-default
	GCC Version: gcc (SUSE Linux) 7.5.0
	Clang Version: 17.0.6
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-gcc

OS: AzureLinux3.0-64
	Kernel Version: 6.6.47.1-1.azl3
	GCC Version: gcc (GCC) 13.2.0
	Clang Version: 18.1.2
	x86_64-native-linuxapp-gcc

OS: UB2404-32
	Kernel Version: 6.8.0-41-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	i686-native-linuxapp-gcc

OS: RHEL8.10-64
	Kernel Version: 4.18.0-553.el8_10.x86_64
	GCC Version: gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-21)
	Clang Version: 17.0.6 (Red Hat 17.0.6-1.module+el8.10.0+20808+e12784c0)
	x86_64-native-linuxapp-gcc

OS: UB2404-64N
	Kernel Version: 6.10.8-061008-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-gcc+shared

OS: UB2404-64
	Kernel Version: 6.8.0-41-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc+16byte
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-doc

OS: RHEL94-64Rt
	Kernel Version: 5.14.0-427.13.1.el9_4.x86_64+rt
	GCC Version: gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3)
	Clang Version: 17.0.6 (Red Hat, Inc. 17.0.6-5.el9)
	x86_64-native-linuxapp-gcc

OS: UB2410-64
	Kernel Version: 6.11.0-8-generic
	GCC Version: gcc (Ubuntu 14.2.0-4ubuntu2) 14.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc

OS: FC40-64
	Kernel Version: 6.8.5-301.fc40.x86_64
	GCC Version: gcc (GCC) 14.0.1 20240411 (Red Hat 14.0.1-0)
	Clang Version: 18.1.1 (Fedora 18.1.1-1.fc40)
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang

OS: UB2404-64Rt
	Kernel Version: 6.8.0-rt8
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc



*Build Failed #1:
OS: OpenAnolis8.9-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^~~~~~~~~
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3150/3200] Linking target examples/dpdk-l3fwd-graph
[3151/3200] Compiling C object examples/dpdk-mp_client.p/multi_process_client_server_mp_mp_client_client.c.o
[3152/3200] Generating examples/multi_process/simple_mp/commands_hdr with a custom command (wrapped by meson to capture output)
[3153/3200] Linking target examples/dpdk-l3fwd-power
[3154/3200] Linking target examples/dpdk-mp_server
[3155/3200] Linking target examples/dpdk-hotplug_mp
[3156/3200] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3157/3200] Linking target examples/dpdk-symmetric_mp
[3158/3200] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #2:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mno-avx512f -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'print_clock_info':
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'clock_path_delay':
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'ptp_adjust_servo':
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function 'parse_drsp':
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of 'clock_path_delay' from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of 'ptp_adjust_servo' from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'parse_ptp_frames':
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of 'print_clock_info' from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[1940/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[1941/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[1942/1974] Linking target examples/dpdk-symmetric_mp
[1943/1974] Linking target examples/dpdk-simple_mp
[1944/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[1945/1974] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[1946/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[1947/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[1948/1974] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #3:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[1949/1991] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_commands.c.o
[1950/1991] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_main.c.o
[1951/1991] Linking target examples/dpdk-mp_server
[1952/1991] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[1953/1991] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[1954/1991] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[1955/1991] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[1956/1991] Compiling C object app/dpdk-test.p/test_test_ring.c.o
[1957/1991] Compiling C object app/dpdk-test.p/test_test_ring_perf.c.o
ninja: build stopped




*Build Failed #4:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-gcc+debug
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mno-avx512f -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'print_clock_info':
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'clock_path_delay':
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'ptp_adjust_servo':
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function 'parse_drsp':
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of 'clock_path_delay' from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of 'ptp_adjust_servo' from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'parse_ptp_frames':
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of 'print_clock_info' from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[1935/1974] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[1936/1974] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[1937/1974] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[1938/1974] Linking target examples/dpdk-hotplug_mp
[1939/1974] Linking target examples/dpdk-mp_server
[1940/1974] Linking target examples/dpdk-mp_client
[1941/1974] Linking target examples/dpdk-l3fwd-graph
[1942/1974] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[1943/1974] Linking target examples/dpdk-simple_mp
ninja: build stopped




*Build Failed #5:
OS: RHEL94-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3150/3190] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3151/3190] Linking target examples/dpdk-ntb
[3152/3190] Linking target examples/dpdk-packet_ordering
[3153/3190] Linking target examples/dpdk-mp_client
[3154/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3155/3190] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3156/3190] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3157/3190] Linking target examples/dpdk-hotplug_mp
[3158/3190] Linking target examples/dpdk-simple_mp
ninja: build stopped




*Build Failed #6:
OS: RHEL94-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3110/3151] Linking target examples/dpdk-ntb
[3111/3151] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3112/3151] Linking target examples/dpdk-mp_client
[3113/3151] Linking target examples/dpdk-symmetric_mp
[3114/3151] Linking target examples/dpdk-pipeline
[3115/3151] Compiling C object examples/dpdk-vhost.p/vhost_virtio_net.c.o
[3116/3151] Compiling C object examples/dpdk-efd_server.p/server_node_efd_efd_server_args.c.o
[3117/3151] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3118/3151] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #7:
OS: RHEL94-64
Target: x86_64-native-linuxapp-gcc+debug
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3142/3186] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3143/3186] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3144/3186] Linking target examples/dpdk-link_status_interrupt
[3145/3186] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3146/3186] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3147/3186] Linking target examples/dpdk-simple_mp
[3148/3186] Linking target examples/dpdk-pipeline
[3149/3186] Linking target examples/dpdk-mp_client
[3150/3186] Linking target examples/dpdk-symmetric_mp
ninja: build stopped




*Build Failed #8:
OS: SUSE15-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3134/3182] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3135/3182] Linking target examples/dpdk-mp_server
[3136/3182] Linking target examples/dpdk-symmetric_mp
[3137/3182] Linking target examples/dpdk-mp_client
[3138/3182] Linking target examples/dpdk-ntb
[3139/3182] Compiling C object examples/dpdk-pipeline.p/pipeline_obj.c.o
[3140/3182] Linking target app/dpdk-test
[3141/3182] Linking target examples/dpdk-simple_mp
[3142/3182] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #9:
OS: SUSE15-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^
../examples/ptpclient/ptpclient.c:314:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
[3134/3180] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3135/3180] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3136/3180] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3137/3180] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3138/3180] Linking target examples/dpdk-mp_client
[3139/3180] Linking target examples/dpdk-simple_mp
[3140/3180] Linking target examples/dpdk-hotplug_mp
[3141/3180] Linking target examples/dpdk-symmetric_mp
[3142/3180] Compiling C object app/dpdk-test.p/test_test_ring_perf.c.o
ninja: build stopped




*Build Failed #10:
OS: AzureLinux3.0-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3162/3200] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3163/3200] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3164/3200] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[3165/3200] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3166/3200] Linking target examples/dpdk-qos_meter
[3167/3200] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3168/3200] Linking target examples/dpdk-pipeline
[3169/3200] Linking target examples/dpdk-symmetric_mp
[3170/3200] Compiling C object examples/dpdk-vhost.p/vhost_main.c.o
ninja: build stopped




*Build Failed #11:
OS: UB2404-32
Target: i686-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -Wno-pointer-to-int-cast -D_GNU_SOURCE -m32 -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[2318/2367] Compiling C object examples/dpdk-pipeline.p/pipeline_obj.c.o
[2319/2367] Linking target examples/dpdk-mp_client
[2320/2367] Linking target examples/dpdk-symmetric_mp
[2321/2367] Linking target examples/dpdk-simple_mp
[2322/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[2323/2367] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[2324/2367] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[2325/2367] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[2326/2367] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #12:
OS: RHEL8.10-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^~~~~~~~~
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3121/3165] Linking target examples/dpdk-symmetric_mp
[3122/3165] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3123/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3124/3165] Linking target examples/dpdk-simple_mp
[3125/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3126/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3127/3165] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3128/3165] Linking target examples/dpdk-ntb
[3129/3165] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #13:
OS: UB2404-64N
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3301/3355] Linking target examples/dpdk-l3fwd
[3302/3355] Linking target examples/dpdk-hotplug_mp
[3303/3355] Linking target examples/dpdk-link_status_interrupt
[3304/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3305/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3306/3355] Linking target examples/dpdk-mp_server
[3307/3355] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3308/3355] Linking target examples/dpdk-l3fwd-power
[3309/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #14:
OS: UB2404-64
Target: x86_64-native-linuxapp-gcc+16byte
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -DRTE_LIBRTE_I40E_16BYTE_RX_DESC -DRTE_LIBRTE_ICE_16BYTE_RX_DESC -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3316/3359] Generating examples/ntb/commands_hdr with a custom command (wrapped by meson to capture output)
[3317/3359] Compiling C object examples/dpdk-pipeline.p/pipeline_thread.c.o
[3318/3359] Linking target examples/dpdk-symmetric_mp
[3319/3359] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3320/3359] Linking target examples/dpdk-mp_server
[3321/3359] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3322/3359] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[3323/3359] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3324/3359] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
ninja: build stopped




*Build Failed #15:
OS: UB2404-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3319/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3320/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3321/3355] Compiling C object examples/dpdk-timer.p/timer_main.c.o
[3322/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3323/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3324/3355] Linking target examples/dpdk-pipeline
[3325/3355] Linking target examples/dpdk-simple_mp
[3326/3355] Compiling C object examples/dpdk-efd_server.p/server_node_efd_efd_server_args.c.o
[3327/3355] Linking target examples/dpdk-ntb
ninja: build stopped




*Build Failed #16:
OS: UB2404-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3308/3355] Linking target examples/dpdk-hotplug_mp
[3309/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[3310/3355] Generating examples/ntb/commands_hdr with a custom command (wrapped by meson to capture output)
[3311/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3312/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3313/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3314/3355] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3315/3355] Linking target examples/dpdk-symmetric_mp
[3316/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #17:
OS: RHEL94-64Rt
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3150/3190] Compiling C object examples/dpdk-timer.p/timer_main.c.o
[3151/3190] Linking target examples/dpdk-l3fwd-power
[3152/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3153/3190] Linking target examples/dpdk-pipeline
[3154/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[3155/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3156/3190] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3157/3190] Linking target examples/dpdk-mp_client
[3158/3190] Linking target examples/dpdk-ntb
ninja: build stopped




*Build Failed #18:
OS: UB2410-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Wincompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Wincompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Wincompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3266/3341] Compiling C object examples/dpdk-l3fwd.p/l3fwd_main.c.o
[3267/3341] Compiling C object examples/dpdk-l3fwd-graph.p/l3fwd-graph_main.c.o
[3268/3341] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_args.c.o
[3269/3341] Linking target examples/dpdk-l2fwd-event
[3270/3341] Linking target examples/dpdk-l2fwd-jobstats
[3271/3341] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_init.c.o
[3272/3341] Linking target examples/dpdk-l2fwd-keepalive
[3273/3341] Linking target examples/dpdk-l2fwd-macsec
[3274/3341] Compiling C object examples/dpdk-mp_client.p/multi_process_client_server_mp_mp_client_client.c.o
ninja: build stopped




*Build Failed #19:
OS: FC40-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Wincompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Wincompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Wincompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3304/3345] Linking target examples/dpdk-symmetric_mp
[3305/3345] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3306/3345] Linking target examples/dpdk-qos_meter
[3307/3345] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3308/3345] Linking target examples/dpdk-ntb
[3309/3345] Linking target examples/dpdk-efd_node
[3310/3345] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3311/3345] Compiling C object examples/dpdk-vmdq_dcb.p/vmdq_dcb_main.c.o
[3312/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
ninja: build stopped




*Build Failed #20:
OS: FC40-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3305/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3306/3345] Linking target examples/dpdk-mp_client
[3307/3345] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3308/3345] Linking target examples/dpdk-symmetric_mp
[3309/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3310/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3311/3345] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3312/3345] Linking target examples/dpdk-simple_mp
[3313/3345] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #21:
OS: UB2404-64Rt
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3281/3345] Generating examples/multi_process/simple_mp/commands_hdr with a custom command (wrapped by meson to capture output)
[3282/3345] Compiling C object examples/dpdk-mp_client.p/multi_process_client_server_mp_mp_client_client.c.o
[3283/3345] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_main.c.o
[3284/3345] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_init.c.o
[3285/3345] Linking target examples/dpdk-l3fwd-graph
[3286/3345] Linking target examples/dpdk-l3fwd-power
[3287/3345] Compiling C object examples/dpdk-link_status_interrupt.p/link_status_interrupt_main.c.o
[3288/3345] Linking target examples/dpdk-l3fwd
[3289/3345] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_main.c.o
ninja: build stopped


DPDK STV team

^ permalink raw reply	[flat|nested] 5+ messages in thread
* |FAILURE| dpdk-next-net-brcm| 664c2350a9| Intel-compilation
@ 2024-11-13  0:25 sys_stv
  0 siblings, 0 replies; 5+ messages in thread
From: sys_stv @ 2024-11-13  0:25 UTC (permalink / raw)
  To: test-report, thomas; +Cc: dpdk_sw_eng, npg.sw.core.tools.prc

[-- Attachment #1: Type: text/plain, Size: 276712 bytes --]


Test-Label: Intel-compilation
Test-Status: FAILURE
_Compilation issues_


commit 664c2350a92549c0754f1ead6514a3dc626d089a
Author: Ajit Khaparde <ajit.khaparde@broadcom.com>
Date:   Thu Oct 3 18:40:15 2024 -0700

    net/bnxt: remove unnecessary ifdef

DPDK git Repo: dpdk-next-net-brcm 


Meson Build Summary: 25 Builds Done, 4 Successful, 21 Failures, 0 Blocked

+------------------+------------+--------------+------------+------------+-----------+----------+------------+
| os               | gcc-static | clang-static | icc-static | gcc-shared | gcc-debug | document | gcc-16byte |
+------------------+------------+--------------+------------+------------+-----------+----------+------------+
| OpenAnolis8.9-64 | fail       |              |            |            |           |          |            |
| FreeBSD14-64     | fail       | fail         |            | pass       | fail      |          |            |
| RHEL94-64        | fail       | fail         |            | pass       | fail      |          |            |
| SUSE15-64        | fail       | fail         |            |            |           |          |            |
| AzureLinux3.0-64 | fail       |              |            |            |           |          |            |
| UB2404-32        | fail       |              |            |            |           |          |            |
| RHEL8.10-64      | fail       |              |            |            |           |          |            |
| UB2404-64N       | fail       |              |            | pass       |           |          |            |
| UB2404-64        | fail       | fail         |            |            |           | pass     | fail       |
| RHEL94-64Rt      | fail       |              |            |            |           |          |            |
| UB2410-64        | fail       |              |            |            |           |          |            |
| FC40-64          | fail       | fail         |            |            |           |          |            |
| UB2404-64Rt      | fail       |              |            |            |           |          |            |
+------------------+------------+--------------+------------+------------+-----------+----------+------------+

Comments: 
Because of DPDK bug (https://bugs.dpdk.org/show_bug.cgi?id=928),
All the dpdk-next-* branch add `Ddisable_drivers=event/cnxk` option when build with ICC complier. 
 
Test environment and configuration as below:


OS: OpenAnolis8.9-64
	Kernel Version: 5.10.134-16.2.an8.x86_64
	GCC Version: gcc (GCC) 8.5.0 20210514 (Anolis 8.5.0-22.0.1)
	Clang Version: 15.0.7 (Anolis 15.0.7-1.0.3.module+an8.8.0+11135+e398acfc)
	x86_64-native-linuxapp-gcc

OS: FreeBSD14-64
	Kernel Version: 14.1-RELEASE
	GCC Version: gcc (FreeBSD Ports Collection) 13.2.0
	Clang Version: 18.1.5 (https://github.com/llvm/llvm-project.git llvmorg-18.1.5-0-g617a15a9eac9)
	x86_64-native-bsdapp-gcc
	x86_64-native-bsdapp-clang
	x86_64-native-bsdapp-gcc+shared
	x86_64-native-bsdapp-gcc+debug

OS: RHEL94-64
	Kernel Version: 5.14.0-427.13.1.el9_4.x86_64
	GCC Version: gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3)
	Clang Version: 17.0.6 (Red Hat, Inc. 17.0.6-5.el9)
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-gcc+shared
	x86_64-native-linuxapp-gcc+debug

OS: SUSE15-64
	Kernel Version: 6.4.0-150600.21-default
	GCC Version: gcc (SUSE Linux) 7.5.0
	Clang Version: 17.0.6
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-gcc

OS: AzureLinux3.0-64
	Kernel Version: 6.6.47.1-1.azl3
	GCC Version: gcc (GCC) 13.2.0
	Clang Version: 18.1.2
	x86_64-native-linuxapp-gcc

OS: UB2404-32
	Kernel Version: 6.8.0-41-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	i686-native-linuxapp-gcc

OS: RHEL8.10-64
	Kernel Version: 4.18.0-553.el8_10.x86_64
	GCC Version: gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-21)
	Clang Version: 17.0.6 (Red Hat 17.0.6-1.module+el8.10.0+20808+e12784c0)
	x86_64-native-linuxapp-gcc

OS: UB2404-64N
	Kernel Version: 6.10.8-061008-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-gcc+shared

OS: UB2404-64
	Kernel Version: 6.8.0-41-generic
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc+16byte
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang
	x86_64-native-linuxapp-doc

OS: RHEL94-64Rt
	Kernel Version: 5.14.0-427.13.1.el9_4.x86_64+rt
	GCC Version: gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3)
	Clang Version: 17.0.6 (Red Hat, Inc. 17.0.6-5.el9)
	x86_64-native-linuxapp-gcc

OS: UB2410-64
	Kernel Version: 6.11.0-8-generic
	GCC Version: gcc (Ubuntu 14.2.0-4ubuntu2) 14.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc

OS: FC40-64
	Kernel Version: 6.8.5-301.fc40.x86_64
	GCC Version: gcc (GCC) 14.0.1 20240411 (Red Hat 14.0.1-0)
	Clang Version: 18.1.1 (Fedora 18.1.1-1.fc40)
	x86_64-native-linuxapp-gcc
	x86_64-native-linuxapp-clang

OS: UB2404-64Rt
	Kernel Version: 6.8.0-rt8
	GCC Version: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
	Clang Version: NA
	x86_64-native-linuxapp-gcc



*Build Failed #1:
OS: OpenAnolis8.9-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^~~~~~~~~
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3154/3200] Linking target examples/dpdk-hotplug_mp
[3155/3200] Generating examples/multi_process/simple_mp/commands_hdr with a custom command (wrapped by meson to capture output)
[3156/3200] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3157/3200] Linking target examples/dpdk-l3fwd-power
[3158/3200] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3159/3200] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3160/3200] Linking target examples/dpdk-mp_client
[3161/3200] Linking target examples/dpdk-symmetric_mp
[3162/3200] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #2:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mno-avx512f -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'print_clock_info':
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'clock_path_delay':
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'ptp_adjust_servo':
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function 'parse_drsp':
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of 'clock_path_delay' from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of 'ptp_adjust_servo' from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'parse_ptp_frames':
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of 'print_clock_info' from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[1933/1974] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[1934/1974] Linking target examples/dpdk-mp_client
[1935/1974] Compiling C object examples/dpdk-qos_meter.p/qos_meter_rte_policer.c.o
[1936/1974] Linking target examples/dpdk-hotplug_mp
[1937/1974] Linking target examples/dpdk-mp_server
[1938/1974] Linking target app/dpdk-test
[1939/1974] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[1940/1974] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[1941/1974] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #3:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[1953/1991] Linking target examples/dpdk-simple_mp
[1954/1991] Linking target examples/dpdk-mp_server
[1955/1991] Linking target examples/dpdk-hotplug_mp
[1956/1991] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[1957/1991] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[1958/1991] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[1959/1991] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[1960/1991] Compiling C object app/dpdk-test.p/test_test_ring_perf.c.o
[1961/1991] Compiling C object app/dpdk-test.p/test_test_ring.c.o
ninja: build stopped




*Build Failed #4:
OS: FreeBSD14-64
Target: x86_64-native-bsdapp-gcc+debug
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/freebsd/include -I../lib/eal/freebsd/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -D__BSD_VISIBLE -march=native -mno-avx512f -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'print_clock_info':
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'clock_path_delay':
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: 'struct ptpv2_data_slave_ordinary' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'ptp_adjust_servo':
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type 'struct ptpv2_data_slave_ordinary'
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function 'parse_drsp':
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of 'clock_path_delay' from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of 'ptp_adjust_servo' from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function 'parse_ptp_frames':
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of 'print_clock_info' from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected 'struct ptpv2_data_slave_ordinary *' but argument is of type 'struct ptpv2_timeReceiver_ordinary *'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[1928/1974] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_main.c.o
[1929/1974] Compiling C object examples/dpdk-l3fwd-graph.p/l3fwd-graph_main.c.o
[1930/1974] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[1931/1974] Linking target examples/dpdk-l3fwd
[1932/1974] Linking target examples/dpdk-link_status_interrupt
[1933/1974] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[1934/1974] Linking target examples/dpdk-mp_client
[1935/1974] Linking target examples/dpdk-mp_server
[1936/1974] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #5:
OS: RHEL94-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3151/3190] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3152/3190] Linking target examples/dpdk-mp_client
[3153/3190] Linking target examples/dpdk-ntb
[3154/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3155/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3156/3190] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3157/3190] Linking target examples/dpdk-hotplug_mp
[3158/3190] Linking target examples/dpdk-simple_mp
[3159/3190] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
ninja: build stopped




*Build Failed #6:
OS: RHEL94-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3110/3151] Linking target examples/dpdk-mp_client
[3111/3151] Linking target examples/dpdk-pipeline
[3112/3151] Compiling C object examples/dpdk-efd_server.p/server_node_efd_efd_server_args.c.o
[3113/3151] Linking target examples/dpdk-ntb
[3114/3151] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3115/3151] Linking target examples/dpdk-symmetric_mp
[3116/3151] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3117/3151] Compiling C object examples/dpdk-vhost.p/vhost_virtio_net.c.o
[3118/3151] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #7:
OS: RHEL94-64
Target: x86_64-native-linuxapp-gcc+debug
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3142/3186] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3143/3186] Linking target examples/dpdk-hotplug_mp
[3144/3186] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3145/3186] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3146/3186] Linking target examples/dpdk-l3fwd-power
[3147/3186] Linking target examples/dpdk-mp_client
[3148/3186] Linking target examples/dpdk-simple_mp
[3149/3186] Linking target examples/dpdk-pipeline
[3150/3186] Linking target examples/dpdk-symmetric_mp
ninja: build stopped




*Build Failed #8:
OS: SUSE15-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3134/3182] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3135/3182] Linking target examples/dpdk-ntb
[3136/3182] Linking target examples/dpdk-mp_server
[3137/3182] Linking target examples/dpdk-mp_client
[3138/3182] Linking target examples/dpdk-symmetric_mp
[3139/3182] Compiling C object examples/dpdk-pipeline.p/pipeline_obj.c.o
[3140/3182] Linking target app/dpdk-test
[3141/3182] Linking target examples/dpdk-simple_mp
[3142/3182] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #9:
OS: SUSE15-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^
../examples/ptpclient/ptpclient.c:314:1: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
 ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
[3134/3180] Linking target examples/dpdk-simple_mp
[3135/3180] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3136/3180] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3137/3180] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3138/3180] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3139/3180] Linking target examples/dpdk-mp_client
[3140/3180] Linking target examples/dpdk-symmetric_mp
[3141/3180] Linking target examples/dpdk-hotplug_mp
[3142/3180] Compiling C object app/dpdk-test.p/test_test_ring_perf.c.o
ninja: build stopped




*Build Failed #10:
OS: AzureLinux3.0-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3164/3200] Linking target examples/dpdk-qos_meter
[3165/3200] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3166/3200] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[3167/3200] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3168/3200] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3169/3200] Linking target examples/dpdk-symmetric_mp
[3170/3200] Compiling C object examples/dpdk-vhost.p/vhost_main.c.o
[3171/3200] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3172/3200] Linking target examples/dpdk-ntb
ninja: build stopped




*Build Failed #11:
OS: UB2404-32
Target: i686-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -Wno-pointer-to-int-cast -D_GNU_SOURCE -m32 -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[2321/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[2322/2367] Compiling C object examples/dpdk-pipeline.p/pipeline_obj.c.o
[2323/2367] Linking target examples/dpdk-qos_meter
[2324/2367] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[2325/2367] Linking target examples/dpdk-symmetric_mp
[2326/2367] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[2327/2367] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[2328/2367] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[2329/2367] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
ninja: build stopped




*Build Failed #12:
OS: RHEL8.10-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:11: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
   ptp_data->transmitter_clock_id.id[0],
           ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:36: error: dereferencing pointer to incomplete type ‘struct ptpv2_data_slave_ordinary’
  t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
                                    ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:22: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     clock_path_delay(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:22: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
     ptp_adjust_servo(ptp_data);
                      ^~~~~~~~
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:21: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    print_clock_info(&ptp_data);
                     ^~~~~~~~~
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
 print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3125/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3126/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3127/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3128/3165] Linking target examples/dpdk-ntb
[3129/3165] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3130/3165] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3131/3165] Compiling C object examples/dpdk-efd_node.p/server_node_efd_efd_node_node.c.o
[3132/3165] Linking target examples/dpdk-qos_meter
[3133/3165] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #13:
OS: UB2404-64N
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3302/3355] Linking target examples/dpdk-link_status_interrupt
[3303/3355] Linking target examples/dpdk-hotplug_mp
[3304/3355] Linking target examples/dpdk-l3fwd-power
[3305/3355] Linking target examples/dpdk-mp_server
[3306/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3307/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3308/3355] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[3309/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3310/3355] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
ninja: build stopped




*Build Failed #14:
OS: UB2404-64
Target: x86_64-native-linuxapp-gcc+16byte
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -DRTE_LIBRTE_I40E_16BYTE_RX_DESC -DRTE_LIBRTE_ICE_16BYTE_RX_DESC -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3313/3359] Linking target examples/dpdk-hotplug_mp
[3314/3359] Linking target examples/dpdk-mp_server
[3315/3359] Generating examples/ntb/commands_hdr with a custom command (wrapped by meson to capture output)
[3316/3359] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3317/3359] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3318/3359] Linking target examples/dpdk-symmetric_mp
[3319/3359] Compiling C object examples/dpdk-qos_meter.p/qos_meter_main.c.o
[3320/3359] Linking target examples/dpdk-packet_ordering
[3321/3359] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
ninja: build stopped




*Build Failed #15:
OS: UB2404-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3318/3355] Linking target examples/dpdk-qos_meter
[3319/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3320/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3321/3355] Compiling C object examples/dpdk-timer.p/timer_main.c.o
[3322/3355] Linking target examples/dpdk-simple_mp
[3323/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_stats.c.o
[3324/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3325/3355] Linking target examples/dpdk-pipeline
[3326/3355] Linking target examples/dpdk-ntb
ninja: build stopped




*Build Failed #16:
OS: UB2404-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3306/3355] Linking target examples/dpdk-link_status_interrupt
[3307/3355] Compiling C object examples/dpdk-symmetric_mp.p/multi_process_symmetric_mp_main.c.o
[3308/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_main.c.o
[3309/3355] Linking target examples/dpdk-hotplug_mp
[3310/3355] Generating examples/ntb/commands_hdr with a custom command (wrapped by meson to capture output)
[3311/3355] Compiling C object examples/dpdk-simple_mp.p/multi_process_simple_mp_mp_commands.c.o
[3312/3355] Compiling C object examples/dpdk-qos_sched.p/qos_sched_args.c.o
[3313/3355] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3314/3355] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #17:
OS: RHEL94-64Rt
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3148/3190] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3149/3190] Compiling C object examples/dpdk-timer.p/timer_main.c.o
[3150/3190] Linking target examples/dpdk-l3fwd-power
[3151/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3152/3190] Linking target examples/dpdk-pipeline
[3153/3190] Compiling C object examples/dpdk-rxtx_callbacks.p/rxtx_callbacks_main.c.o
[3154/3190] Linking target examples/dpdk-mp_client
[3155/3190] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cfg_file.c.o
[3156/3190] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
ninja: build stopped




*Build Failed #18:
OS: UB2410-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Wincompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Wincompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Wincompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3265/3341] Compiling C object examples/dpdk-l3fwd.p/l3fwd_l3fwd_lpm.c.o
[3266/3341] Linking target examples/dpdk-l2fwd-jobstats
[3267/3341] Compiling C object examples/dpdk-l3fwd.p/l3fwd_main.c.o
[3268/3341] Compiling C object examples/dpdk-l3fwd-graph.p/l3fwd-graph_main.c.o
[3269/3341] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_args.c.o
[3270/3341] Linking target examples/dpdk-l2fwd-event
[3271/3341] Linking target examples/dpdk-l2fwd-keepalive
[3272/3341] Linking target examples/dpdk-l2fwd-macsec
[3273/3341] Compiling C object examples/dpdk-mp_client.p/multi_process_client_server_mp_mp_client_client.c.o
ninja: build stopped




*Build Failed #19:
OS: FC40-64
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Wincompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Wincompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Wincompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3306/3345] Linking target examples/dpdk-qos_meter
[3307/3345] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3308/3345] Linking target examples/dpdk-ntb
[3309/3345] Linking target examples/dpdk-simple_mp
[3310/3345] Linking target examples/dpdk-efd_node
[3311/3345] Compiling C object examples/dpdk-vmdq_dcb.p/vmdq_dcb_main.c.o
[3312/3345] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3313/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_app_thread.c.o
[3314/3345] Compiling C object examples/dpdk-vhost.p/vhost_main.c.o
ninja: build stopped




*Build Failed #20:
OS: FC40-64
Target: x86_64-native-linuxapp-clang
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
clang -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: declaration of 'struct ptpv2_data_slave_ordinary' will not be visible outside of this function [-Werror,-Wvisibility]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:320:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:321:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:322:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:323:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:324:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:325:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:326:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:327:11: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                 ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:330:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:331:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:334:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  334 |                         ptp_data->tstamp1.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:335:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:338:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  338 |                         ptp_data->tstamp3.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:339:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:342:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  342 |                         ptp_data->tstamp4.tv_sec,
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:343:13: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                          ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:347:12: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  347 |                         ptp_data->delta);
      |                         ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
../examples/ptpclient/ptpclient.c:350:38: error: incomplete definition of type 'struct ptpv2_data_slave_ordinary'
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                            ~~~~~~~~^
../examples/ptpclient/ptpclient.c:314:25: note: forward declaration of 'struct ptpv2_data_slave_ordinary'
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[3305/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_cmdline.c.o
[3306/3345] Linking target examples/dpdk-mp_client
[3307/3345] Compiling C object examples/dpdk-ntb.p/ntb_ntb_fwd.c.o
[3308/3345] Compiling C object examples/dpdk-pipeline.p/pipeline_cli.c.o
[3309/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_init.c.o
[3310/3345] Linking target examples/dpdk-symmetric_mp
[3311/3345] Compiling C object examples/dpdk-qos_sched.p/qos_sched_main.c.o
[3312/3345] Compiling C object examples/dpdk-packet_ordering.p/packet_ordering_main.c.o
[3313/3345] Linking target examples/dpdk-simple_mp
ninja: build stopped




*Build Failed #21:
OS: UB2404-64Rt
Target: x86_64-native-linuxapp-gcc
FAILED: examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o 
gcc -Iexamples/dpdk-ptpclient.p -Iexamples -I../examples -Iexamples/ptpclient -I../examples/ptpclient -I../examples/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/ethdev -I../lib/ethdev -Ilib/meter -I../lib/meter -Ilib/cmdline -I../lib/cmdline -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -march=native -mrtm -Wno-format-truncation -DALLOW_EXPERIMENTAL_API -MD -MQ examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -MF examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o.d -o examples/dpdk-ptpclient.p/ptpclient_ptpclient.c.o -c ../examples/ptpclient/ptpclient.c
../examples/ptpclient/ptpclient.c:314:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘print_clock_info’:
../examples/ptpclient/ptpclient.c:320:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  320 |                 ptp_data->transmitter_clock_id.id[0],
      |                         ^~
../examples/ptpclient/ptpclient.c:321:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  321 |                 ptp_data->transmitter_clock_id.id[1],
      |                         ^~
../examples/ptpclient/ptpclient.c:322:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  322 |                 ptp_data->transmitter_clock_id.id[2],
      |                         ^~
../examples/ptpclient/ptpclient.c:323:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  323 |                 ptp_data->transmitter_clock_id.id[3],
      |                         ^~
../examples/ptpclient/ptpclient.c:324:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  324 |                 ptp_data->transmitter_clock_id.id[4],
      |                         ^~
../examples/ptpclient/ptpclient.c:325:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  325 |                 ptp_data->transmitter_clock_id.id[5],
      |                         ^~
../examples/ptpclient/ptpclient.c:326:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  326 |                 ptp_data->transmitter_clock_id.id[6],
      |                         ^~
../examples/ptpclient/ptpclient.c:327:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  327 |                 ptp_data->transmitter_clock_id.id[7]);
      |                         ^~
../examples/ptpclient/ptpclient.c:330:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  330 |                         (ptp_data->tstamp2.tv_sec),
      |                                  ^~
../examples/ptpclient/ptpclient.c:331:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  331 |                         (ptp_data->tstamp2.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:334:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  334 |                         ptp_data->tstamp1.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:335:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  335 |                         (ptp_data->tstamp1.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:338:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  338 |                         ptp_data->tstamp3.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:339:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  339 |                         (ptp_data->tstamp3.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:342:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  342 |                         ptp_data->tstamp4.tv_sec,
      |                                 ^~
../examples/ptpclient/ptpclient.c:343:34: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  343 |                         (ptp_data->tstamp4.tv_nsec));
      |                                  ^~
../examples/ptpclient/ptpclient.c:347:33: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  347 |                         ptp_data->delta);
      |                                 ^~
../examples/ptpclient/ptpclient.c:350:52: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  350 |                 rte_eth_timesync_read_time(ptp_data->current_ptp_port,
      |                                                    ^~
../examples/ptpclient/ptpclient.c:362:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  362 |                 ptp_data->new_adj = ns_to_timeval(nsec);
      |                         ^~
../examples/ptpclient/ptpclient.c:364:39: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  364 |                 gettimeofday(&ptp_data->new_adj, NULL);
      |                                       ^~
../examples/ptpclient/ptpclient.c:366:37: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  366 |                 time_t tp = ptp_data->new_adj.tv_sec;
      |                                     ^~
../examples/ptpclient/ptpclient.c:369:45: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  369 |                         ctime(&tp), ptp_data->new_adj.tv_usec);
      |                                             ^~
../examples/ptpclient/ptpclient.c:376:61: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  376 |                 printf("path delay: %"PRId64"ns\n", ptp_data->path_delay);
      |                                                             ^~
../examples/ptpclient/ptpclient.c:377:64: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  377 |                 printf("master offset: %"PRId64"ns\n", ptp_data->master_offset);
      |                                                                ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:586:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘clock_path_delay’:
../examples/ptpclient/ptpclient.c:591:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  591 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:592:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  592 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:593:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  593 |         t3_ns = timespec64_to_ns(&ptp_data->tstamp3);
      |                                           ^~
../examples/ptpclient/ptpclient.c:594:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  594 |         t4_ns = timespec64_to_ns(&ptp_data->tstamp4);
      |                                           ^~
../examples/ptpclient/ptpclient.c:599:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  599 |                 ptp_data->path_delay = pd / 2;
      |                         ^~
../examples/ptpclient/ptpclient.c:601:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  601 |                 ptp_data->path_delay = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c: At top level:
../examples/ptpclient/ptpclient.c:695:25: error: ‘struct ptpv2_data_slave_ordinary’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘ptp_adjust_servo’:
../examples/ptpclient/ptpclient.c:701:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  701 |         t1_ns = timespec64_to_ns(&ptp_data->tstamp1);
      |                                           ^~
../examples/ptpclient/ptpclient.c:702:43: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  702 |         t2_ns = timespec64_to_ns(&ptp_data->tstamp2);
      |                                           ^~
../examples/ptpclient/ptpclient.c:703:17: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                 ^~
../examples/ptpclient/ptpclient.c:703:59: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  703 |         ptp_data->master_offset = t2_ns - t1_ns - ptp_data->path_delay;
      |                                                           ^~
../examples/ptpclient/ptpclient.c:704:22: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  704 |         if (!ptp_data->path_delay)
      |                      ^~
../examples/ptpclient/ptpclient.c:707:38: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                      ^~
../examples/ptpclient/ptpclient.c:707:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  707 |         adj_freq = pi_sample(ptp_data->servo, ptp_data->master_offset, t2_ns,
      |                                                       ^~
../examples/ptpclient/ptpclient.c:714:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  714 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:715:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  715 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:717:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  717 |                 rte_eth_timesync_adjust_time(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c:718:55: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  718 |                                              -ptp_data->master_offset);
      |                                                       ^~
../examples/ptpclient/ptpclient.c:721:25: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  721 |                 ptp_data->servo->first_update = 0;
      |                         ^~
../examples/ptpclient/ptpclient.c:722:54: error: invalid use of undefined type ‘struct ptpv2_data_slave_ordinary’
  722 |                 rte_eth_timesync_adjust_freq(ptp_data->portid,
      |                                                      ^~
../examples/ptpclient/ptpclient.c: In function ‘parse_drsp’:
../examples/ptpclient/ptpclient.c:753:50: error: passing argument 1 of ‘clock_path_delay’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  753 |                                 clock_path_delay(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:586:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  586 | clock_path_delay(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c:754:50: error: passing argument 1 of ‘ptp_adjust_servo’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  754 |                                 ptp_adjust_servo(ptp_data);
      |                                                  ^~~~~~~~
      |                                                  |
      |                                                  struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:695:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  695 | ptp_adjust_servo(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
../examples/ptpclient/ptpclient.c: In function ‘parse_ptp_frames’:
../examples/ptpclient/ptpclient.c:804:42: error: passing argument 1 of ‘print_clock_info’ from incompatible pointer type [-Werror=incompatible-pointer-types]
  804 |                         print_clock_info(&ptp_data);
      |                                          ^~~~~~~~~
      |                                          |
      |                                          struct ptpv2_timeReceiver_ordinary *
../examples/ptpclient/ptpclient.c:314:52: note: expected ‘struct ptpv2_data_slave_ordinary *’ but argument is of type ‘struct ptpv2_timeReceiver_ordinary *’
  314 | print_clock_info(struct ptpv2_data_slave_ordinary *ptp_data)
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors
[3280/3345] Compiling C object examples/dpdk-mp_client.p/multi_process_client_server_mp_mp_client_client.c.o
[3281/3345] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_commands.c.o
[3282/3345] Generating examples/multi_process/simple_mp/commands_hdr with a custom command (wrapped by meson to capture output)
[3283/3345] Compiling C object examples/dpdk-hotplug_mp.p/multi_process_hotplug_mp_main.c.o
[3284/3345] Compiling C object examples/dpdk-mp_server.p/multi_process_client_server_mp_mp_server_init.c.o
[3285/3345] Compiling C object examples/dpdk-link_status_interrupt.p/link_status_interrupt_main.c.o
[3286/3345] Linking target examples/dpdk-l3fwd-power
[3287/3345] Linking target examples/dpdk-l3fwd
[3288/3345] Linking target examples/dpdk-l3fwd-graph
ninja: build stopped


DPDK STV team

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-11-15 22:43 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-11-15 22:42 |FAILURE| dpdk-next-net-brcm| 664c2350a9| Intel-compilation sys_stv
  -- strict thread matches above, loose matches on Subject: below --
2024-11-14 22:46 sys_stv
2024-11-13 22:40 sys_stv
2024-11-13  9:46 sys_stv
2024-11-13  0:25 sys_stv

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).