Điểm:5

Làm cách nào để đáp ứng sự phụ thuộc vào bản dựng 'libadwaita-1' (trong gnome/meson)?

lá cờ bb

Câu hỏi, trong ngắn hạn:

Làm thế nào tôi có thể cài đặt libadwaita-1 sự phụ thuộc cho một meson-xây dựng dự án?

(Đặc biệt máy tính gnome, nếu điều đó quan trọng.)

Lý lịch:

Tôi quan tâm đến việc thực hiện một chỉnh sửa nhỏ cho Máy tính Gnome ứng dụng, chủ yếu chỉ để giải trí cho riêng tôi (tôi muốn đổi nút Ï thành nút, vì pi là sai ;) ), và vì vậy đã tải xuống nguồn và cố gắng xây dựng nó, với hy vọng sau đó thực hiện thay đổi.

Nó dường như mong đợi được xây dựng với meson (mà trước đây tôi không quen thuộc), vì vậy... tôi đang cố gắng xây dựng nó với điều đó, để tôi có thể thực hiện các chỉnh sửa của mình và bắt đầu từ đó.

Thông tin hệ thống

Tôi đang làm điều này trên Ubuntu budgie ...

: $; lsb_release -a
Không có mô-đun LSB nào khả dụng.
ID nhà phân phối: Ubuntu
Mô tả: Ubuntu 21.10
Phát hành: 21.10
Tên mã: impish

Những gì tôi đã cố gắng cho đến nay

  • git clone https://gitlab.gnome.org/GNOME/gnome-calculator.git (có nó với cam kết 214649c tại HEAD)

  • máy tính cd gnome

  • (xem README, xem xét nhiều thứ khác nhau, nhận ra rằng tôi có thể muốn meson, đã đọc một số về điều đó ...)

  • Sudo apt cài đặt meson

  • xây dựng meson

  • Sau đó tôi tiến hành tìm các phụ thuộc khác nhau chưa được đáp ứng, rằng tôi có thể tìm ra cách giải quyết... đang làm sudo apt cài đặt trên mỗi:

    • valac
    • cmake
    • libxml2-dev
    • libsoup-gnome2.4-dev
    • libgee-0.8-dev
    • libmpc-dev
    • libgtk-4-dev (lưu ý phụ: cái này đã cài đặt 4.4.0 và tôi đã chỉnh sửa meson.build để thay đổi yêu cầu thành yêu cầu đó từ 4.4.1... Điều mà tôi cho rằng có thể tạo ra các vấn đề khác, nhưng tôi sẽ tìm ra điều đó nếu/khi tôi gặp phải chúng.)
  • Nhưng cuối cùng, tôi đã đạt được một điều... Tôi nghĩ mình có thể giải quyết bằng Sudo apt cài đặt libadwaitaqt-dev, nhưng điều đó không thực hiện được mẹo:

Những gì tôi nhận được (phiên bản rút gọn):

: $; xây dựng meson
Hệ thống xây dựng Meson
Phiên bản: 0.56.2
Thư mục nguồn: /home/lindes/src/gits/gnome/gnome-calculator
Thư mục bản dựng: /home/lindes/src/gits/gnome/gnome-calculator/build
Loại bản dựng: bản dựng gốc
Tên dự án: máy tính gnome
Phiên bản dự án: 41.0
[... một loạt các phụ thuộc được tìm thấy đã được loại bỏ; xem bên dưới để biết danh sách đầy đủ ...]
Đã tìm thấy CMake: /usr/bin/cmake (3.18.4)
Đã tìm thấy phụ thuộc thời gian chạy libadwaita-1: KHÔNG (đã thử pkgconfig và cmake)

meson.build:85:0: LỖI: Không tìm thấy phụ thuộc "libadwaita-1", đã thử pkgconfig và cmake

Vấn đề:

Vì vậy, tóm lại, tôi muốn biết cách giải quyết sự phụ thuộc sau:

Đã tìm thấy phụ thuộc thời gian chạy libadwaita-1: KHÔNG

Một lần nữa, tôi đã thử sudo apt cài đặt trên libadwaitaqt-devvà cài đặt đó đã hoạt động, nhưng nó không giải quyết được sự phụ thuộc của bản dựng. tôi cũng đã thử libadwaitaqt1adwaita-qt.

Cụ thể hơn, đây là những gì tôi đã cài đặt, trong khi nó vẫn bị lỗi:

: $; dpkg-query -l '*adwaita*'
Mong muốn=Không xác định/Cài đặt/Xóa/Thanh lọc/Giữ
| Trạng thái=Không/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Trạng thái,Err: chữ hoa=xấu)
||/ Tên Phiên bản Kiến trúc Mô tả
+++-========================-======= ================================================================= ===============
ii adwaita-icon-theme 40.1.1-1ubuntu1 tất cả chủ đề biểu tượng mặc định của Gnome (tập hợp con nhỏ)
un adwaita-icon-theme-full <none> <none> (không có mô tả)
ii adwaita-qt:amd64 1.4.0-2 AMD64 Qt 5 cổng của chủ đề Adwaita của GNOMEâs
ii libadwaitaqt-dev:amd64 1.4.0-2 AMD64 Qt 5 cổng của chủ đề Adwaita của GNOMEâs â các tệp phát triển
ii libadwaitaqt1:amd64 1.4.0-2 AMD64 Qt 5 cổng của chủ đề Adwaita của GNOMEâs â thư viện công cộng
ii libadwaitaqtpriv1:amd64 1.4.0-2 AMD64 Qt 5 cổng của chủ đề Adwaita của GNOMEâs â thư viện riêng

Câu hỏi, được nhắc lại với nền tảng này:

Làm cách nào tôi có thể cài đặt cái này và/hoặc sửa lỗi kiểm tra phụ thuộc để sử dụng những gì tôi có?

Ghi chú thêm về câu hỏi:

  1. Tôi thực sự muốn cài đặt các phụ thuộc với một số loại quản lý gói, mặc dù tôi có thể thử xây dựng chờ đợi từ nguồn tiếp theo và xem liệu tôi có thể làm việc đó không. Hy vọng của tôi là chỉ phải tự xây dựng máy tính gnome từ đầu.

  2. Ngoài ra: tôi có làm gì sai với xây dựng meson dòng lệnh? Một lần nữa, tôi mới sử dụng meson, vì vậy các mẹo về vấn đề đó cũng được hoan nghênh, mặc dù tôi đã thử một vài tùy chọn và dường như tất cả chúng đều tạo ra kết quả giống nhau, nếu chúng làm bất cứ điều gì có vẻ hữu ích.

Những gì tôi nhận được (phiên bản đầy đủ):

: $; xây dựng meson
Hệ thống xây dựng Meson
Phiên bản: 0.56.2
Thư mục nguồn: /home/lindes/src/gits/gnome/gnome-calculator
Thư mục bản dựng: /home/lindes/src/gits/gnome/gnome-calculator/build
Loại bản dựng: bản dựng gốc
Tên dự án: máy tính gnome
Phiên bản dự án: 41.0
Trình biên dịch C cho máy chủ: cc (gcc 11.2.0 "gcc (Ubuntu 11.2.0-7ubuntu2) 11.2.0")
Trình liên kết C cho máy chủ: cc ld.bfd 2.37
Trình biên dịch Vala cho máy chủ: valac (valac 0.52.6)
Họ cpu máy chủ: x86_64
CPU máy chủ: x86_64
Đã tìm thấy pkg-config: /usr/bin/pkg-config (0.29.2)
Đã tìm thấy phụ thuộc thời gian chạy gio-2.0: CÓ 2.68.4
Đã tìm thấy phụ thuộc thời gian chạy glib-2.0: CÓ 2.68.4
Đã tìm thấy phụ thuộc thời gian chạy gmodule-export-2.0: CÓ 2.68.4
Đã tìm thấy phụ thuộc thời gian chạy gobject-2.0: CÓ 2.68.4
Đã tìm thấy phụ thuộc thời gian chạy libxml-2.0: CÓ 2.9.12
Đã tìm thấy phụ thuộc thời gian chạy libsoup-2.4: CÓ 2.72.0
Đã tìm thấy phụ thuộc thời gian chạy gee-0.8: CÓ 0.20.4
Thư viện m đã tìm thấy: CÓ
Đã tìm thấy thư viện mpc: CÓ
Đã tìm thấy thư viện mpc: CÓ
Đã tìm thấy thư viện mpfr: CÓ
Đã tìm thấy thư viện mpfr: CÓ
Đã tìm thấy thư viện posix: CÓ
Định cấu hình config.h bằng cách sử dụng cấu hình
Đã tìm thấy chương trình meson_post_install.py: CÓ (/home/lindes/src/gits/gnome/gnome-calculator/meson_post_install.py)
Định cấu hình gcalc-2.pc bằng cấu hình
Định cấu hình gcalc-2.deps bằng cấu hình
Định cấu hình không gian tên-info.vala bằng cách sử dụng cấu hình
Định cấu hình config.h bằng cách sử dụng cấu hình
Đã tìm thấy chương trình g-ir-compiler: CÓ (/usr/bin/g-ir-compiler)
Đã tìm thấy phụ thuộc thời gian chạy gtk4: CÓ 4.4.0
Đã tìm thấy CMake: /usr/bin/cmake (3.18.4)
Đã tìm thấy phụ thuộc thời gian chạy libadwaita-1: KHÔNG (đã thử pkgconfig và cmake)

meson.build:85:0: LỖI: Không tìm thấy phụ thuộc "libadwaita-1", đã thử pkgconfig và cmake

Bạn có thể tìm thấy nhật ký đầy đủ tại /home/lindes/src/gits/gnome/gnome-calculator/build/meson-logs/meson-log.txt
lá cờ hr
Có vẻ như các tệp phát triển `libadwaita-1` không được cung cấp cho đến khi Ubuntu "jammy" được phát hành theo gói [libadwaita-1-dev](https://packages.ubuntu.com/jammy/libadwaita-1-dev)
Điểm:6
lá cờ zw

Bạn đang cố làm cho Ubuntu hoạt động như Gentoo, LFS hoặc ArchLinux. Như vậy là bạn đã làm sai các bước.

Để xây dựng/xây dựng lại/vá lỗi máy tính gnome bạn phải lấy nguồn của nó cho gói gỡ lỗi cho bản phát hành Ubuntu 21.10 của bạn. Lúc đầu, hãy bật kho lưu trữ Mã nguồn từ Phần mềm & Cập nhật (phần mềm-thuộc tính-gtk) rồi thực hiện các lệnh sau:

Sudo apt-get cài đặt bản dựng dpkg-dev cần thiết
Sudo apt-get build-dep máy tính gnome

cd ~/Tải xuống
apt-get nguồn gnome-máy tính
cd gnome-máy tính-40.1/
# thực hiện một số bản vá/mã hóa tại đây
dpkg-buildpackage -uc -us

cài đặt sudo apt-get ../gnome-calculator_40.1-1ubuntu2_amd64.deb

Nếu bạn chắc chắn về việc biên dịch phiên bản máy tính gnome không phải Ubuntu mới nhất - thì bạn phải xây dựng libadwaita-1 gói từ 22.04 LTS sắp tới trước tiên bằng cách:

sudo apt-get cài đặt debhelper-compat dh-sequence-gir libgirepository1.0-dev libgnome-desktop-3-dev libgtk-4-dev meson sassc valac xvfb

cd ~/Tải xuống
wget http://archive.ubuntu.com/ubuntu/pool/universe/liba/libadwaita-1/libadwaita-1_1.0.0~alpha.2.orig.tar.gz
cd libadwaita-1-1.0.0~alpha.2/
wget http://archive.ubuntu.com/ubuntu/pool/universe/liba/libadwaita-1/libadwaita-1_1.0.0~alpha.2-1.debian.tar.xz
tar -xf libadwaita-1_1.0.0~alpha.2-1.debian.tar.xz
rm libadwaita-1_1.0.0~alpha.2-1.debian.tar.xz

xuất DEB_BUILD_OPTIONS=nocheck
dpkg-buildpackage -uc -us
sudo apt-get cài đặt ../*adw*.deb

và sau đó tiến hành biên dịch bỏ lỡ libgtksourceview-5-dev bưu kiện:

sudo apt-get cài đặt dh-sequence-gnome gtk-doc-tools libxml2-utils libglib2.0-doc libgtk-3-doc libgdk-pixbuf2.0-doc libpango1.0-doc

cd ~/Tải xuống
wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gtksourceview5/gtksourceview5_5.2.0.orig.tar.xz
cd gtksourceview-5.2.0/
wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gtksourceview5/gtksourceview5_5.2.0-2.debian.tar.xz
tar -xf gtksourceview5_5.2.0-2.debian.tar.xz
rm gtksourceview5_5.2.0-2.debian.tar.xz
dpkg-buildpackage -uc -us
sudo apt-get cài đặt ../*gtksource*.deb

Và chỉ sau đó, bạn mới có thể thử tiến hành biên dịch phiên bản git master-branch của máy tính gnome.

lá cờ bb
Tôi không chắc ý của bạn trong câu đầu tiên đó là gì... việc tôi "cố gắng làm cho Ubuntu hoạt động như Gentoo, LFS hoặc ArchLinux" có nghĩa là gì? Dù sao, cảm ơn cho câu trả lời. Hiện tại tôi đang sử dụng một máy khác, nhưng sẽ sớm dùng thử tính năng này và bỏ phiếu và/hoặc nhận xét tùy theo tình hình hoạt động.
lá cờ us
libadwaita khả dụng cho ngày 21.10 trong PPA này. https://launchpad.net/~ubuntuhandbook1/+archive/ubuntu/giara/+packages

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.