Closed hamirmahal closed 4 months ago
How do you recommend that we get the latest version of gtk4
?
$ pkg-config --modversion gtk4
4.6.9
I think potential contributors would appreciate having that documented in README.md
.
I tried running
sudo apt update && sudo apt install ffmpeg libgtk-3-dev libgdk-pixbuf2.0-dev libglib2.0-dev gettext libappindicator3-dev x11-utils pulseaudio
and
sudo apt install build-essential clang cargo libappindicator3-1 x11-utils gettext pulseaudio ffmpeg
and cargo build
still fails.
I tried running
sudo apt update && sudo apt install ffmpeg libgtk-3-dev libgdk-pixbuf2.0-dev libglib2.0-dev gettext libappindicator3-dev x11-utils pulseaudio
and
sudo apt install build-essential clang cargo libappindicator3-1 x11-utils gettext pulseaudio ffmpeg
and
cargo build
still fails.
You are correct, the instructions is for old version (was based on gtk3)
I will update the instructions for gtk4 (just use gtk-4-dev
)
You are correct, the instructions is for old version (was based on gtk3) I will update the instructions for gtk4 (just use
gtk-4-dev
)
I'm having trouble with that.
~/blue-recorder (master)$ sudo apt-get install gtk-4-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package gtk-4-dev
what is your distro and version?
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.4 LTS
Release: 22.04
Codename: jammy
$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.4 LTS Release: 22.04 Codename: jammy
install libgtk-4-dev
It still fails.
hamir@hamir-desktop:~/blue-recorder (master)$ sudo apt install libgtk-4-dev
[sudo] password for hamir:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
libgtk-4-dev is already the newest version (4.6.9+ds-0ubuntu0.22.04.1).
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
hamir@hamir-desktop:~/blue-recorder (master)$ cargo build
Skipping git submodule `https://github.com/gtk-rs/gir` due to update strategy in .gitmodules
Skipping git submodule `https://github.com/gtk-rs/gir-files` due to update strategy in .gitmodules
Skipping git submodule `https://github.com/gtk-rs/gir` due to update strategy in .gitmodules
Skipping git submodule `https://github.com/gtk-rs/gir-files` due to update strategy in .gitmodules
Compiling gdk4-sys v0.4.8
Compiling async-io v1.13.0
Compiling ahash v0.7.6
Compiling num-traits v0.2.17
Compiling memoffset v0.7.1
Compiling gio v0.15.12
Compiling zvariant_derive v3.15.0
Compiling crypto-common v0.1.6
error: failed to run custom build command for `gdk4-sys v0.4.8`
Caused by:
process didn't exit successfully: `/home/hamir/blue-recorder/target/debug/build/gdk4-sys-6f38647fc557b03b/build-script-build` (exit status: 1)
--- stdout
cargo:rerun-if-env-changed=GTK4_NO_PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG_x86_64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_x86_64_unknown_linux_gnu
cargo:rerun-if-env-changed=HOST_PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG_PATH_x86_64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_PATH_x86_64_unknown_linux_gnu
cargo:rerun-if-env-changed=HOST_PKG_CONFIG_PATH
cargo:rerun-if-env-changed=PKG_CONFIG_PATH
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_x86_64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_x86_64_unknown_linux_gnu
cargo:rerun-if-env-changed=HOST_PKG_CONFIG_LIBDIR
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_x86_64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_x86_64_unknown_linux_gnu
cargo:rerun-if-env-changed=HOST_PKG_CONFIG_SYSROOT_DIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
--- stderr
`PKG_CONFIG_ALLOW_SYSTEM_CFLAGS="1" "pkg-config" "--libs" "--cflags" "gtk4" "gtk4 >= 4.7"` did not exit successfully: exit status: 1
error: could not find system library 'gtk4' required by the 'gdk4-sys' crate
--- stderr
Requested 'gtk4 >= 4.7' but version of GTK is 4.6.9
warning: build failed, waiting for other jobs to finish...
hamir@hamir-desktop:~/blue-recorder (master)$ git pull
Already up to date.
fixed, now you can build blue recorder in Ubuntu 20.04
It still seems to fail on Ubuntu 22.04.
hamir@hamir-desktop:~/blue-recorder (master)$ pkg-config --modversion gtk4
4.6.9
hamir@hamir-desktop:~/blue-recorder (master)$ sudo apt-get install gtk-4-dev
[sudo] password for hamir:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package gtk-4-dev
hamir@hamir-desktop:~/blue-recorder (master)$ sudo apt install libgtk-4-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
libgtk-4-dev is already the newest version (4.6.9+ds-0ubuntu0.22.04.2).
The following packages were automatically installed and are no longer required:
libstd-rust-1.75 libstd-rust-dev
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 46 not upgraded.
hamir@hamir-desktop:~/blue-recorder (master)$ cargo build
Updating crates.io index
Updating git repository `https://github.com/gtk-rs/gtk4-rs.git`
error: failed to get `gdk4` as a dependency of package `blue-recorder v0.2.0 (/home/hamir/blue-recorder)`
Caused by:
failed to load source for dependency `gdk4`
Caused by:
Unable to update https://github.com/gtk-rs/gtk4-rs.git#39262e1d
Caused by:
failed to fetch into: /home/hamir/.cargo/git/db/gtk4-rs-e74ad56283dfeb5e
Caused by:
network failure seems to have happened
if a proxy or similar is necessary `net.git-fetch-with-cli` may help here
https://doc.rust-lang.org/cargo/reference/config.html#netgit-fetch-with-cli
Caused by:
SSL error: unknown error; class=Ssl (16)
hamir@hamir-desktop:~/blue-recorder (master)$ git log
commit ee02a8f0ba930e6e0f9a96636ea95b80fb4695c1 (HEAD -> master, origin/master, origin/HEAD)
Author: Salem Yaslem <s@sy.sa>
Date: Mon Jun 3 20:44:14 2024 +0300
allow blue recorder to build in Ubuntu 20.04
It still seems to fail on Ubuntu 22.04.
hamir@hamir-desktop:~/blue-recorder (master)$ pkg-config --modversion gtk4 4.6.9 hamir@hamir-desktop:~/blue-recorder (master)$ sudo apt-get install gtk-4-dev [sudo] password for hamir: Reading package lists... Done Building dependency tree... Done Reading state information... Done E: Unable to locate package gtk-4-dev hamir@hamir-desktop:~/blue-recorder (master)$ sudo apt install libgtk-4-dev Reading package lists... Done Building dependency tree... Done Reading state information... Done libgtk-4-dev is already the newest version (4.6.9+ds-0ubuntu0.22.04.2). The following packages were automatically installed and are no longer required: libstd-rust-1.75 libstd-rust-dev Use 'sudo apt autoremove' to remove them. 0 upgraded, 0 newly installed, 0 to remove and 46 not upgraded. hamir@hamir-desktop:~/blue-recorder (master)$ cargo build Updating crates.io index Updating git repository `https://github.com/gtk-rs/gtk4-rs.git` error: failed to get `gdk4` as a dependency of package `blue-recorder v0.2.0 (/home/hamir/blue-recorder)` Caused by: failed to load source for dependency `gdk4` Caused by: Unable to update https://github.com/gtk-rs/gtk4-rs.git#39262e1d Caused by: failed to fetch into: /home/hamir/.cargo/git/db/gtk4-rs-e74ad56283dfeb5e Caused by: network failure seems to have happened if a proxy or similar is necessary `net.git-fetch-with-cli` may help here https://doc.rust-lang.org/cargo/reference/config.html#netgit-fetch-with-cli Caused by: SSL error: unknown error; class=Ssl (16) hamir@hamir-desktop:~/blue-recorder (master)$ git log commit ee02a8f0ba930e6e0f9a96636ea95b80fb4695c1 (HEAD -> master, origin/master, origin/HEAD) Author: Salem Yaslem <s@sy.sa> Date: Mon Jun 3 20:44:14 2024 +0300 allow blue recorder to build in Ubuntu 20.04
you will need to install other dependencies
sudo apt install build-essential clang librust-gstreamer-sys-dev librust-gdk-sys-dev librust-atk-dev librust-gtk4-sys-dev libgdk-pixbuf-2.0-dev librust-pango-dev librust-gobject-sys-dev ffmpeg