Fix ARM64 Debian packages lacking dependencies
It looks like cargo-deb v2.5.0 silently broke this for our use case, and other use cases which have been reported upstream: https://github.com/kornelski/cargo-deb/issues/21 To make dpkg-shlibdeps work more reliably until this inconsistent choice of multiarch and cross-build lib directories is sorted out, let's pass the documented `LD_LIBRARY_PATH` environment variable to ensure such libraries are always found. Interestingly, setting `DEB_HOST_ARCH` to a different value did not have any effect.
This commit is contained in:
parent
ef1d87427d
commit
a451711e96
1 changed files with 10 additions and 1 deletions
11
.github/workflows/deploy.yml
vendored
11
.github/workflows/deploy.yml
vendored
|
|
@ -103,8 +103,17 @@ jobs:
|
|||
# properly
|
||||
sudo apt-get -yq install libc6-arm64-cross libgcc-s1-arm64-cross
|
||||
|
||||
- name: Build deb archives
|
||||
- name: Build Debian packages
|
||||
if: endsWith(matrix.target, '-linux-gnu')
|
||||
env:
|
||||
# The *-arm64-cross packages above install AArch64 libraries in
|
||||
# /usr/<arch>/lib instead of /usr/lib/<arch>, as expected by
|
||||
# cargo-deb and dpkg-shlibdeps to find such shared libraries.
|
||||
# Make both of them visible to such commands by adding that directory
|
||||
# to the dynamic linker's library search path. See:
|
||||
# - <https://man7.org/linux/man-pages/man1/dpkg-shlibdeps.1.html> ("Errors" section)
|
||||
# - <https://github.com/kornelski/cargo-deb/issues/21>
|
||||
LD_LIBRARY_PATH: /usr/aarch64-linux-gnu/lib
|
||||
run: |
|
||||
mkdir -p "target/${{ matrix.target }}/release"
|
||||
mv target/oxipng "target/${{ matrix.target }}/release"
|
||||
|
|
|
|||
Loading…
Reference in a new issue