Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix dependencies link for build #555

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

pythcoiner
Copy link
Collaborator

the previous link was o the running dependencies for GUI instead of the building dependencies
btw I also experience a missing cmake on a Debian 11.7, should I add it to the dependencies (or just add a comment about that in the doc?)

doc/BUILD.md Outdated
@@ -85,7 +85,7 @@ build deps examples incremental liana-cli liana-cli.d lianad lianad.d li
```

To build the whole wallet including the GUI, you'll need to install its [build and runtime
dependencies](https://github.com/wizardsardine/liana/tree/master/gui#dependencies) first. Then run
dependencies](https://github.com/wizardsardine/liana/tree/master/doc/TRY.md#system-dependencies) first. Then run
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://github.com/wizardsardine/liana/tree/master/gui#dependencies details both the runtime and build time dependencies of the GUI. If any are missing they should be added there.

https://github.com/wizardsardine/liana/tree/master/doc/TRY.md#system-dependencies lists the system dependencies necessary to follow the guide.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Comment on lines +9 to +15
- [`udev`](https://www.freedesktop.org/software/systemd/man/udev.html) (On Debian/Ubuntu `apt install udev`)
- [`fontconfig`](https://www.freedesktop.org/wiki/Software/fontconfig/) for access to fonts (On Debian/Ubuntu `apt install libfontconfig1-dev`)
- [`libudev-dev`](https://www.freedesktop.org/software/systemd/man/libudev.html) to communicate with devices through USB (On Debian/Ubuntu `apt install libudev-dev`)

In addition, if you want to build the project from source, you will need:
- [`pkg-config`](https://www.freedesktop.org/wiki/Software/pkg-config/) (On Debian/Ubuntu `apt install pkg-config`)
- `cmake` (On Debian/Ubuntu apt install cmake)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do you think cmake and udev are necessary dependencies? I strongly suspect they are not since in a fresh Ubuntu container we can build and test the GUI without them:

- name: Test on Rust ${{ matrix.toolchain }} (non Windows)
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update &&
sudo apt-get install libudev-dev libfontconfig1-dev &&
cd gui &&

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I got issue at build time on some fresh install ubuntu or debian (proxmox VM)

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i'm building liana-gui on a fresh Debian12 today, got this:

~/liana/gui$ cargo build --release 
*   Compiling proc-macro2 v1.0.64
   Compiling quote v1.0.26
   Compiling libc v0.2.141
   Compiling cfg-if v1.0.0
   Compiling pkg-config v0.3.26
error: linker `cc` not found
  |
  = note: No such file or directory (os error 2)

error: could not compile `quote` (build script) due to previous error
warning: build failed, waiting for other jobs to finish...
error: could not compile `proc-macro2` (build script) due to previous error
error: could not compile `libc` (build script) due to previous error

fixed by installing build-essential (I guess cmake + udev in build-essential),
should I replace requiring cmake+udev by build-essential?

@pythcoiner
Copy link
Collaborator Author

try to install from .deb package on debian 12 today, looks like don't have the issue anymore

@pythcoiner pythcoiner closed this Oct 31, 2023
@pythcoiner pythcoiner deleted the fix_doc_build branch January 13, 2024 23:27
@pythcoiner
Copy link
Collaborator Author

pythcoiner commented Mar 25, 2024

try to build on a fresh installed debian12 today, build-essential is needed

@pythcoiner pythcoiner restored the fix_doc_build branch March 25, 2024 05:50
@pythcoiner pythcoiner reopened this Mar 25, 2024
@pythcoiner pythcoiner changed the title fix dependencies link for build [wip] fix dependencies link for build Mar 25, 2024
@pythcoiner pythcoiner marked this pull request as draft March 25, 2024 05:54
@pythcoiner
Copy link
Collaborator Author

fresh ubuntu22.04 :

pyth@pyth-Standard-PC-i440FX-PIIX-1996:~/liana$ sudo apt install libfontconfig-dev libudev-dev pkg-config -y
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libbrotli-dev libc-dev-bin libc-devtools libc6 libc6-dbg libc6-dev libcrypt-dev libdpkg-perl libexpat1 libexpat1-dev
  libfile-fcntllock-perl libfreetype-dev libfreetype6-dev libnsl-dev libpng-dev libpng-tools libtirpc-dev libuuid1
  linux-libc-dev manpages-dev rpcsvc-proto uuid-dev zlib1g-dev
Suggested packages:
  glibc-doc debian-keyring gcc | c-compiler binutils bzr freetype2-doc dpkg-dev
Recommended packages:
  libnss-nis libnss-nisplus
The following NEW packages will be installed:
  libbrotli-dev libc-dev-bin libc-devtools libc6-dev libcrypt-dev libdpkg-perl libexpat1-dev libfile-fcntllock-perl
  libfontconfig-dev libfreetype-dev libfreetype6-dev libnsl-dev libpng-dev libpng-tools libtirpc-dev libudev-dev
  linux-libc-dev manpages-dev pkg-config rpcsvc-proto uuid-dev zlib1g-dev
The following packages will be upgraded:
  libc6 libc6-dbg libexpat1 libuuid1
4 upgraded, 22 newly installed, 0 to remove and 276 not upgraded.
Need to get 7.983 kB/25,3 MB of archives.
After this operation, 36,0 MB of additional disk space will be used.
Get:1 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libuuid1 amd64 2.37.2-4ubuntu3.4 [23,8 kB]
Get:2 http://vn.archive.ubuntu.com/ubuntu jammy/main amd64 libbrotli-dev amd64 1.0.9-2build6 [337 kB]
Get:3 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libc-dev-bin amd64 2.35-0ubuntu3.8 [20,3 kB]
Get:4 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libc-devtools amd64 2.35-0ubuntu3.8 [28,9 kB]
Get:5 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 linux-libc-dev amd64 5.15.0-116.126 [1.338 kB]
Get:6 http://vn.archive.ubuntu.com/ubuntu jammy/main amd64 libcrypt-dev amd64 1:4.4.27-1 [112 kB]
Get:7 http://vn.archive.ubuntu.com/ubuntu jammy/main amd64 rpcsvc-proto amd64 1.4.2-0ubuntu6 [68,5 kB]
Get:8 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libtirpc-dev amd64 1.3.2-2ubuntu0.1 [192 kB]
Get:9 http://vn.archive.ubuntu.com/ubuntu jammy/main amd64 libnsl-dev amd64 1.3.0-2build2 [71,3 kB]
Get:10 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libc6-dev amd64 2.35-0ubuntu3.8 [2.100 kB]
Get:11 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libexpat1-dev amd64 2.4.7-1ubuntu0.3 [147 kB]
Get:12 http://vn.archive.ubuntu.com/ubuntu jammy/main amd64 libfile-fcntllock-perl amd64 0.22-3build7 [33,9 kB]
Get:13 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 zlib1g-dev amd64 1:1.2.11.dfsg-2ubuntu9.2 [164 kB]
Get:14 http://vn.archive.ubuntu.com/ubuntu jammy/main amd64 libpng-dev amd64 1.6.37-3build5 [192 kB]
Get:15 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libfreetype-dev amd64 2.11.1+dfsg-1ubuntu0.2 [555 kB]
Get:16 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libfreetype6-dev amd64 2.11.1+dfsg-1ubuntu0.2 [8.290 B]
Get:17 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 uuid-dev amd64 2.37.2-4ubuntu3.4 [33,1 kB]
Get:18 http://vn.archive.ubuntu.com/ubuntu jammy/main amd64 pkg-config amd64 0.29.2-1ubuntu3 [48,2 kB]
Get:19 http://vn.archive.ubuntu.com/ubuntu jammy/main amd64 libfontconfig-dev amd64 2.13.1-4.2ubuntu5 [151 kB]
Get:20 http://vn.archive.ubuntu.com/ubuntu jammy/main amd64 libpng-tools amd64 1.6.37-3build5 [28,7 kB]
Get:21 http://vn.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libudev-dev amd64 249.11-0ubuntu3.12 [20,7 kB]
Get:22 http://vn.archive.ubuntu.com/ubuntu jammy/main amd64 manpages-dev all 5.10-1ubuntu1 [2.309 kB]
Fetched 7.983 kB in 1s (8.295 kB/s)    
Preconfiguring packages ...
(Reading database ... 178606 files and directories currently installed.)
Preparing to unpack .../libc6-dbg_2.35-0ubuntu3.8_amd64.deb ...
Unpacking libc6-dbg:amd64 (2.35-0ubuntu3.8) over (2.35-0ubuntu3.1) ...
Preparing to unpack .../libc6_2.35-0ubuntu3.8_amd64.deb ...
Unpacking libc6:amd64 (2.35-0ubuntu3.8) over (2.35-0ubuntu3.1) ...
Setting up libc6:amd64 (2.35-0ubuntu3.8) ...
(Reading database ... 178608 files and directories currently installed.)
Preparing to unpack .../libuuid1_2.37.2-4ubuntu3.4_amd64.deb ...
Unpacking libuuid1:amd64 (2.37.2-4ubuntu3.4) over (2.37.2-4ubuntu3) ...
Setting up libuuid1:amd64 (2.37.2-4ubuntu3.4) ...
(Reading database ... 178608 files and directories currently installed.)
Preparing to unpack .../00-libexpat1_2.4.7-1ubuntu0.3_amd64.deb ...
Unpacking libexpat1:amd64 (2.4.7-1ubuntu0.3) over (2.4.7-1ubuntu0.2) ...
Selecting previously unselected package libbrotli-dev:amd64.
Preparing to unpack .../01-libbrotli-dev_1.0.9-2build6_amd64.deb ...
Unpacking libbrotli-dev:amd64 (1.0.9-2build6) ...
Selecting previously unselected package libc-dev-bin.
Preparing to unpack .../02-libc-dev-bin_2.35-0ubuntu3.8_amd64.deb ...
Unpacking libc-dev-bin (2.35-0ubuntu3.8) ...
Selecting previously unselected package libc-devtools.
Preparing to unpack .../03-libc-devtools_2.35-0ubuntu3.8_amd64.deb ...
Unpacking libc-devtools (2.35-0ubuntu3.8) ...
Selecting previously unselected package linux-libc-dev:amd64.
Preparing to unpack .../04-linux-libc-dev_5.15.0-116.126_amd64.deb ...
Unpacking linux-libc-dev:amd64 (5.15.0-116.126) ...
Selecting previously unselected package libcrypt-dev:amd64.
Preparing to unpack .../05-libcrypt-dev_1%3a4.4.27-1_amd64.deb ...
Unpacking libcrypt-dev:amd64 (1:4.4.27-1) ...
Selecting previously unselected package rpcsvc-proto.
Preparing to unpack .../06-rpcsvc-proto_1.4.2-0ubuntu6_amd64.deb ...
Unpacking rpcsvc-proto (1.4.2-0ubuntu6) ...
Selecting previously unselected package libtirpc-dev:amd64.
Preparing to unpack .../07-libtirpc-dev_1.3.2-2ubuntu0.1_amd64.deb ...
Unpacking libtirpc-dev:amd64 (1.3.2-2ubuntu0.1) ...
Selecting previously unselected package libnsl-dev:amd64.
Preparing to unpack .../08-libnsl-dev_1.3.0-2build2_amd64.deb ...
Unpacking libnsl-dev:amd64 (1.3.0-2build2) ...
Selecting previously unselected package libc6-dev:amd64.
Preparing to unpack .../09-libc6-dev_2.35-0ubuntu3.8_amd64.deb ...
Unpacking libc6-dev:amd64 (2.35-0ubuntu3.8) ...
Selecting previously unselected package libdpkg-perl.
Preparing to unpack .../10-libdpkg-perl_1.21.1ubuntu2.3_all.deb ...
Unpacking libdpkg-perl (1.21.1ubuntu2.3) ...
Selecting previously unselected package libexpat1-dev:amd64.
Preparing to unpack .../11-libexpat1-dev_2.4.7-1ubuntu0.3_amd64.deb ...
Unpacking libexpat1-dev:amd64 (2.4.7-1ubuntu0.3) ...
Selecting previously unselected package libfile-fcntllock-perl.
Preparing to unpack .../12-libfile-fcntllock-perl_0.22-3build7_amd64.deb ...
Unpacking libfile-fcntllock-perl (0.22-3build7) ...
Selecting previously unselected package zlib1g-dev:amd64.
Preparing to unpack .../13-zlib1g-dev_1%3a1.2.11.dfsg-2ubuntu9.2_amd64.deb ...
Unpacking zlib1g-dev:amd64 (1:1.2.11.dfsg-2ubuntu9.2) ...
Selecting previously unselected package libpng-dev:amd64.
Preparing to unpack .../14-libpng-dev_1.6.37-3build5_amd64.deb ...
Unpacking libpng-dev:amd64 (1.6.37-3build5) ...
Selecting previously unselected package libfreetype-dev:amd64.
Preparing to unpack .../15-libfreetype-dev_2.11.1+dfsg-1ubuntu0.2_amd64.deb ...
Unpacking libfreetype-dev:amd64 (2.11.1+dfsg-1ubuntu0.2) ...
Selecting previously unselected package libfreetype6-dev:amd64.
Preparing to unpack .../16-libfreetype6-dev_2.11.1+dfsg-1ubuntu0.2_amd64.deb ...
Unpacking libfreetype6-dev:amd64 (2.11.1+dfsg-1ubuntu0.2) ...
Selecting previously unselected package uuid-dev:amd64.
Preparing to unpack .../17-uuid-dev_2.37.2-4ubuntu3.4_amd64.deb ...
Unpacking uuid-dev:amd64 (2.37.2-4ubuntu3.4) ...
Selecting previously unselected package pkg-config.
Preparing to unpack .../18-pkg-config_0.29.2-1ubuntu3_amd64.deb ...
Unpacking pkg-config (0.29.2-1ubuntu3) ...
Selecting previously unselected package libfontconfig-dev:amd64.
Preparing to unpack .../19-libfontconfig-dev_2.13.1-4.2ubuntu5_amd64.deb ...
Unpacking libfontconfig-dev:amd64 (2.13.1-4.2ubuntu5) ...
Selecting previously unselected package libpng-tools.
Preparing to unpack .../20-libpng-tools_1.6.37-3build5_amd64.deb ...
Unpacking libpng-tools (1.6.37-3build5) ...
Selecting previously unselected package libudev-dev:amd64.
Preparing to unpack .../21-libudev-dev_249.11-0ubuntu3.12_amd64.deb ...
Unpacking libudev-dev:amd64 (249.11-0ubuntu3.12) ...
Selecting previously unselected package manpages-dev.
Preparing to unpack .../22-manpages-dev_5.10-1ubuntu1_all.deb ...
Unpacking manpages-dev (5.10-1ubuntu1) ...
Setting up libexpat1:amd64 (2.4.7-1ubuntu0.3) ...
Setting up manpages-dev (5.10-1ubuntu1) ...
Setting up libpng-tools (1.6.37-3build5) ...
Setting up libfile-fcntllock-perl (0.22-3build7) ...
Setting up linux-libc-dev:amd64 (5.15.0-116.126) ...
Setting up libc6-dbg:amd64 (2.35-0ubuntu3.8) ...
Setting up libtirpc-dev:amd64 (1.3.2-2ubuntu0.1) ...
Setting up rpcsvc-proto (1.4.2-0ubuntu6) ...
Setting up libudev-dev:amd64 (249.11-0ubuntu3.12) ...
Setting up libdpkg-perl (1.21.1ubuntu2.3) ...
Setting up libnsl-dev:amd64 (1.3.0-2build2) ...
Setting up libcrypt-dev:amd64 (1:4.4.27-1) ...
Setting up libc-dev-bin (2.35-0ubuntu3.8) ...
Setting up libbrotli-dev:amd64 (1.0.9-2build6) ...
Setting up libc-devtools (2.35-0ubuntu3.8) ...
Setting up pkg-config (0.29.2-1ubuntu3) ...
Setting up libc6-dev:amd64 (2.35-0ubuntu3.8) ...
Setting up libexpat1-dev:amd64 (2.4.7-1ubuntu0.3) ...
Setting up uuid-dev:amd64 (2.37.2-4ubuntu3.4) ...
Setting up zlib1g-dev:amd64 (1:1.2.11.dfsg-2ubuntu9.2) ...
Setting up libpng-dev:amd64 (1.6.37-3build5) ...
Setting up libfreetype-dev:amd64 (2.11.1+dfsg-1ubuntu0.2) ...
Setting up libfontconfig-dev:amd64 (2.13.1-4.2ubuntu5) ...
Setting up libfreetype6-dev:amd64 (2.11.1+dfsg-1ubuntu0.2) ...
Processing triggers for man-db (2.10.2-1) ...
Processing triggers for libc-bin (2.35-0ubuntu3.1) ...
pyth@pyth-Standard-PC-i440FX-PIIX-1996:~/liana$ cargo build --release
   Compiling libc v0.2.151
   Compiling proc-macro2 v1.0.74
   Compiling serde v1.0.194
   Compiling bitcoin-internals v0.2.0
   Compiling hex_lit v0.1.1
   Compiling ahash v0.8.11
   Compiling serde_json v1.0.110
   Compiling once_cell v1.19.0
error: linker `cc` not found
  |
  = note: No such file or directory (os error 2)

error: could not compile `serde_json` (build script) due to 1 previous error
warning: build failed, waiting for other jobs to finish...
error: could not compile `ahash` (build script) due to 1 previous error
error: could not compile `serde` (build script) due to 1 previous error
error: could not compile `bitcoin-internals` (build script) due to 1 previous error
error: could not compile `hex_lit` (build script) due to 1 previous error
error: could not compile `proc-macro2` (build script) due to 1 previous error
error: could not compile `libc` (build script) due to 1 previous error

@pythcoiner
Copy link
Collaborator Author

same issue on building on ubuntu 22.04

@pythcoiner pythcoiner changed the title [wip] fix dependencies link for build fix dependencies link for build Sep 9, 2024
@pythcoiner pythcoiner marked this pull request as ready for review September 9, 2024 07:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Review
Development

Successfully merging this pull request may close these issues.

2 participants