I wrote this very simple program in Vala using Adw.Application class.
public class Application : Adw.Application {
public Terminal() {
Object(
application_id: "com.example.application",
flags: ApplicationFlags.FLAGS_NONE
);
}
protected override void activate() {
var window = new Gtk.ApplicationWindow(this);
window.title = "Application";
window.present();
}
}
int main(string[] args) {
var app = new Application();
return app.run(args);
}
I would like to compile this program. But, using old command line instead of Meson. But, I don’t know how to include libadwaita-1 or libadwaita package while compiling it.
error: Package `libadwaita-1' not found in specified Vala API directories or GObject-Introspection GIR directories
Compilation failed: 1 error(s), 0 warning(s)
How to correctly include this libadwaita-1 in compilation?
Are you maybe on Ubuntu/Debian or another distro that splits software into multiple packages? Specifically a distro that splits the development files of a library into its own package like libadwaita-1-dev. You’d need to install that.
This worked for me on Arch Linux:
valac test.vala --pkg libadwaita-1
Though I needed to rename public Terminal() to public Application() to make it compile.
Yes, that was the issue. Thank you @jakedane . I was confused previously. Because, I created a new project using GNOME Builder, there it works for Adw.Application. But, not if I created manually.
Just writing the steps here for ref. on how I resolve the issue.
I’m using Fedora and installed the libadwaita-devel package using following command.
sudo dnf install libadwaita-devel
Then using following command, I successfully able to run application.