### Function

# Gtk check_version

since: 4.0

#### Declaration [src]

    const char*
    gtk_check_version (
      guint required_major,
      guint required_minor,
      guint required_micro
    )

#### Description [src]

Checks that the GTK library in use is compatible with the given version.

Generally you would pass in the constants `GTK_MAJOR_VERSION`, `GTK_MINOR_VERSION`, `GTK_MICRO_VERSION` as the three arguments to this function; that produces a check that the library in use is compatible with the version of GTK the application or module was compiled against.

Compatibility is defined by two things: first the version of the running library is newer than the version `required_major`.required_minor.`required_micro`. Second the running library must be binary compatible with the version `required_major`.required_minor.`required_micro` (same major version.)

This function is primarily for GTK modules; the module can call this function to check that it wasn’t loaded into an incompatible version of GTK. However, such a check isn’t completely reliable, since the module may be linked against an old version of GTK and calling the old version of gtk_check_version(), but still get loaded into an application using a newer version of GTK.

Available since: 4.0

#### Parameters

`required_major`

  Type: `guint`

  The required major version.

`required_minor`

  Type: `guint`

  The required minor version.

`required_micro`

  Type: `guint`

  The required micro version.

#### Return value

Type: `const char*`

`NULL` if the GTK library is compatible with the given version, or a string describing the version mismatch. The returned string is owned by GTK and should not be modified or freed.

The data is owned by the called function.
The return value can be `NULL`.
The value is a NUL terminated UTF-8 string.