How to install libadwaita in OpenSUSE

Hello! I have a problem with adwaita library. I tried to install it via zypper: zypper install libadwaita. But there is a lot of alternatives package: libadwaita-1-0, libadwaita-1-0-1.6.beta+1~git.a997558-216.1.x86_64 and so on. But it’s not installed into PATH (usr/share/include) and I can’t use it. Then I moved it into usr/share/include directory manually and it’s visible now
If I compile it with makefile

CC=gcc
FLAGS_ADW=`pkg-config --cflags --libs libadwaita-1 `
FLAGS_GTK=`pkg-config --cflags --libs gtk4` 

all: *.c
	$(CC) *.c -o com.example.Application $(FLAGS_ADW) $(FLAGS_GTK)

It writes default error: undefined reference to…

Please, help me with installation of this library.
I’d like to have easy to use header files like gtk and such compiling instruction

'libadwaita' package contains the shared library (.so) which is needed at runtime for your program to run.

$ rpm -ql libadwaita-1-0 
/usr/lib64/libadwaita-1.so.0
/usr/share/doc/packages/libadwaita-1-0
/usr/share/doc/packages/libadwaita-1-0/README.md
/usr/share/licenses/libadwaita-1-0
/usr/share/licenses/libadwaita-1-0/COPYING

For compiling code which uses 'libXYZ', you need to install 'libXYZ-devel' package ('libadwaita-devel' in this case) which contains the .pc and headers as shown below.

$ rpm -ql libadwaita-devel
/usr/include/libadwaita-1
/usr/include/libadwaita-1/adw-about-dialog.h
/usr/include/libadwaita-1/adw-about-window.h
/usr/include/libadwaita-1/adw-action-row.h
/usr/include/libadwaita-1/adw-alert-dialog.h
/usr/include/libadwaita-1/adw-animation-target.h
/usr/include/libadwaita-1/adw-animation-util.h
/usr/include/libadwaita-1/adw-animation.h
/usr/include/libadwaita-1/adw-application-window.h
/usr/include/libadwaita-1/adw-application.h
/usr/include/libadwaita-1/adw-avatar.h
/usr/include/libadwaita-1/adw-banner.h
/usr/include/libadwaita-1/adw-bin.h
/usr/include/libadwaita-1/adw-breakpoint-bin.h
/usr/include/libadwaita-1/adw-breakpoint.h
/usr/include/libadwaita-1/adw-button-content.h
/usr/include/libadwaita-1/adw-carousel-indicator-dots.h
/usr/include/libadwaita-1/adw-carousel-indicator-lines.h
/usr/include/libadwaita-1/adw-carousel.h
/usr/include/libadwaita-1/adw-clamp-layout.h
/usr/include/libadwaita-1/adw-clamp-scrollable.h
/usr/include/libadwaita-1/adw-clamp.h
/usr/include/libadwaita-1/adw-combo-row.h
/usr/include/libadwaita-1/adw-dialog.h
/usr/include/libadwaita-1/adw-easing.h
/usr/include/libadwaita-1/adw-entry-row.h
/usr/include/libadwaita-1/adw-enum-list-model.h
/usr/include/libadwaita-1/adw-enums.h
/usr/include/libadwaita-1/adw-expander-row.h
/usr/include/libadwaita-1/adw-flap.h
/usr/include/libadwaita-1/adw-fold-threshold-policy.h
/usr/include/libadwaita-1/adw-header-bar.h
/usr/include/libadwaita-1/adw-leaflet.h
/usr/include/libadwaita-1/adw-length-unit.h
/usr/include/libadwaita-1/adw-main.h
/usr/include/libadwaita-1/adw-message-dialog.h
/usr/include/libadwaita-1/adw-navigation-direction.h
/usr/include/libadwaita-1/adw-navigation-split-view.h
/usr/include/libadwaita-1/adw-navigation-view.h
/usr/include/libadwaita-1/adw-overlay-split-view.h
/usr/include/libadwaita-1/adw-password-entry-row.h
/usr/include/libadwaita-1/adw-preferences-dialog.h
/usr/include/libadwaita-1/adw-preferences-group.h
/usr/include/libadwaita-1/adw-preferences-page.h
/usr/include/libadwaita-1/adw-preferences-row.h
/usr/include/libadwaita-1/adw-preferences-window.h
/usr/include/libadwaita-1/adw-spin-row.h
/usr/include/libadwaita-1/adw-split-button.h
/usr/include/libadwaita-1/adw-spring-animation.h
/usr/include/libadwaita-1/adw-spring-params.h
/usr/include/libadwaita-1/adw-squeezer.h
/usr/include/libadwaita-1/adw-status-page.h
/usr/include/libadwaita-1/adw-style-manager.h
/usr/include/libadwaita-1/adw-swipe-tracker.h
/usr/include/libadwaita-1/adw-swipeable.h
/usr/include/libadwaita-1/adw-switch-row.h
/usr/include/libadwaita-1/adw-tab-bar.h
/usr/include/libadwaita-1/adw-tab-button.h
/usr/include/libadwaita-1/adw-tab-overview.h
/usr/include/libadwaita-1/adw-tab-view.h
/usr/include/libadwaita-1/adw-timed-animation.h
/usr/include/libadwaita-1/adw-toast-overlay.h
/usr/include/libadwaita-1/adw-toast.h
/usr/include/libadwaita-1/adw-toolbar-view.h
/usr/include/libadwaita-1/adw-version.h
/usr/include/libadwaita-1/adw-view-stack.h
/usr/include/libadwaita-1/adw-view-switcher-bar.h
/usr/include/libadwaita-1/adw-view-switcher-title.h
/usr/include/libadwaita-1/adw-view-switcher.h
/usr/include/libadwaita-1/adw-window-title.h
/usr/include/libadwaita-1/adw-window.h
/usr/include/libadwaita-1/adwaita.h
/usr/lib64/libadwaita-1.so
/usr/lib64/pkgconfig/libadwaita-1.pc
/usr/share/gir-1.0/Adw-1.gir
/usr/share/vala/vapi
/usr/share/vala/vapi/libadwaita-1.deps
/usr/share/vala/vapi/libadwaita-1.vapi

Also, you don’t need need this line as 'libadwaita' depends on 'gtk4', so 'gtk4' requirements will be included automatically as shown below.

$ pkg-config --libs libadwaita-1
-ladwaita-1 -lgtk-4 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -lgdk_pixbuf-2.0 -lcairo-gobject -lcairo -lvulkan -lgraphene-1.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0

$ pkg-config --cflags libadwaita-1
-I/usr/include/libadwaita-1 -I/usr/include/gtk-4.0 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/cairo -I/usr/include/libpng16 -I/usr/include/freetype2 -I/usr/include/pixman-1 -I/usr/include/graphene-1.0 -I/usr/lib64/graphene-1.0/include -mfpmath=sse -msse -msse2 -I/usr/include/libxkbcommon -I/usr/include/wayland -I/usr/include/fribidi -I/usr/include/appstream -pthread -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include

Exhaustive answer! Thank you

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.