Skip to content

API for libgpiod has changed in v2 #2842

@jasonKercher

Description

@jasonKercher

Here are the steps I follow to reproduce the issue:

  1. Have libgpiod version >= 2
  2. Attempt to compile linuxcnc v 2.9.2

This is what I expected to happen:

Build succeeds

This is what happened instead:

In file included from hal/drivers/hal_gpio.c:39:
hal/drivers/hal_gpio.c:188:50: error: invalid application of ‘sizeof’ to incomplete type ‘struct gpiod_line_bulk’
  188 |             (*ptr)[c].bulk = rtapi_kmalloc(sizeof(*(*ptr)[c].bulk), RTAPI_GFP_KERNEL);

...along with lots of warnings for implicit declarations of functions (due to API change).

It worked properly before this:

libgpiod version <= 1.6.4

Information about my hardware and software:

  • I am using Manjaro. I know that is not officially supported, but we do keep a working linuxcnc package over there.
    Manjaro is part of the Arch Linux family, so we always have the bleeding edge latest software. I imagine this will not be an issue on Debian for some time.
  • Linux Kernel Version 6.1.66
  • Linux CNC v2.9.2

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions