GObject Introspection is an open source and freely distributed library software implemented in C and designed from the ground up to be used for describing APIs (Application Programming Interfaces), as well as to collect them in a machine readable and uniform format.
The library uses an XML file format called GIR in order to provide a common structure, which can be used for accessing the complete available API exported by a library or any other unit of code. It is written entirely in the C programming language.
Comprises of various tools
GObject Introspection is shipped with various tools, among which we can mention g-ir-compile, a typelib compiler that can convert one or more GIR files into typelib blobs; g-ir-generate, a GIR generator that can generate GIR files from binary typelib; g-ir-scanner, a utility that generates GIR XML files.
Getting started with GObject Introspection
Installing the GObject Introspection library on your GNU/Linux operating system is quite an easy task, as all you have to do is to open your package manager, search for the ‘gobject-introspection’ package and install it with a double mouse click.
If you would like to first optimize it for your hardware architecture (32-bit or 64-bit are supported at this time) or operating system, download the latest version from Softoware, where it’s distributed as a tarball (TAR archive).
Save the archive on a location of your choice, extract it, open a terminal emulator and navigate to the location of the extracted archive files using the ‘cd’ command (e.g. cd /home/softoware/gobject-introspection-1.42.0).
Optimize and configure the program by executing the ‘./configure’ command, followed by the ‘make’ command to compile GObject Introspection. Finally, install it system wide by running the ‘sudo make install’ command as a privileged user or the ‘make install’ command as root.
What is new in this release:
- Changes:
- Update annotations imported from GLib, and require GLib 2.58
- Ensure that G-I builds on macOS
- Add a --version argument to the Python-based tools
- Allow selecting the output format for g-ir-doc-tool
- Drop the Visual Studio templates
- Use Sphinx to generate the user documentation; gtk-doc is still required for the girepository-1.0 C API reference
- Support all _Float* C types from ISO/IEC TS 18661-3:2015
- Issues resolved on gitlab.gnome.org:
- #139 - make check fails for gobject-introspection 1.44.0 on OS X 10.10.4
- #184 - Default element-type not set for GByteArray object properties
- #189 - c:type missing pointer/array information in GIR for C array parameters
- #134 - Allow multiple output formats
- #218 - gtk2 hits unreachable code after enable -Wswitch-default
- #113 - Memory leaks in GI regress and marshalling tests property setters
- Bugs resolved on bugzilla.gnome.org:
- #702788 - The girepository DLL is acquiring pointers incorrectly on Windows/x64
What is new in version 1.56.1:
- Changes:
- Add _Float128 to the base C types
- Update annotations imported from GLib, and require GLib 2.56
- Issues resolved on gitlab.gnome.org:
- #173 - Fails to parse flag-constants
- #175 - writer: Include documentation and symbol position in source files
- #120 - adding subdir-objects to AM_INIT_AUTOMAKE
- #190 - const qualifier dropped from c:type on (type filename) parameters
- #188 - giscanner: don't print "suppressed N warnings" if --quiet was specified
- Bugs resolved on bugzilla.gnome.org:
- #764791 - gitypelib.c: increase #define MAX_NAME_LEN from 200 to 255
- #756921 - g-ir-scanner does not recognize _Thread_local
- #791991 - Broken shared-library value in gir files on *BSD when builddir includes the name of the library
- #791902 - Building using non-libtool (e.g., meson) on MinGW
- #629667 - MY_ENUM_VALUE = only works for last member
- #699354 - g-ir-compiler man page for --shared-library incorrectly says "lib" and ".so" should be removed
- #761985 - os.name can be wrong in some context
- #699328 - GI_TYPELIB_PATH is undocumented
Comments not found