cannot find library libxcb.so.1 needed by debian issue while packaging

Asked by Arun Sivaraman on 2020-07-21

I am able to successfully create the debian packages and upload it to the PPA. However, the builds keep failing because of this, I have given the Depends as
libc6 (>= 2.31), libgcc1 (>= 1:3.0), libstdc++6 (>= 5.2), libvulkan1, libwayland-client0 (>= 1.9.91), libx11-6, libxcb1

and still getting error, can anyone help

make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info
dpkg-shlibdeps: error: cannot find library libxcb.so.1 needed by debian/vulkan-tools/usr/bin/vulkaninfo (ELF format: 'elf64-x86-64' abi: '0201003e00000000'; RPATH: '')
dpkg-shlibdeps: error: cannot find library libX11.so.6 needed by debian/vulkan-tools/usr/bin/vulkaninfo (ELF format: 'elf64-x86-64' abi: '0201003e00000000'; RPATH: '')
dpkg-shlibdeps: error: cannot find library libwayland-client.so.0 needed by debian/vulkan-tools/usr/bin/vulkaninfo (ELF format: 'elf64-x86-64' abi: '0201003e00000000'; RPATH: '')
dpkg-shlibdeps: error: cannot continue due to the errors listed above
Note: libraries are not searched in other binary packages that do not have any shlibs or symbols file.
To help dpkg-shlibdeps find private libraries, you might need to use -l.
dh_shlibdeps: error: dpkg-shlibdeps -Tdebian/vulkan-tools.substvars --ignore-missing-info debian/vulkan-tools/usr/bin/vulkaninfo returned exit code 2
dh_shlibdeps: error: Aborting due to earlier error
make[1]: *** [debian/rules:20: override_dh_shlibdeps] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:17: binary] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary subprocess returned exit status 2

Question information

Language:
English Edit question
Status:
Solved
For:
Launchpad itself Edit question
Assignee:
No assignee Edit question
Solved by:
Arun Sivaraman
Solved:
2020-07-22
Last query:
2020-07-22
Last reply:
2020-07-22
Manfred Hampl (m-hampl) said : #1

I assume that the packages libwayland-client0, libx11-6, libxcb1 have to be listed in the "Build-Depends:" of the source package, not in the "Depends:" of the binary package.

Colin Watson (cjwatson) said : #2

What @m-hampl said, but Build-Depends will need to list the -dev counterparts of those packages.

Also, you should generally use "Depends: ${misc:Depends}, ${shlibs:Depends}" in most cases to have library dependencies autogenerated for you, and only add specific extra runtime dependencies to that if the autogeneration process misses anything.

Arun Sivaraman (arunsivaraman) said : #3

Thanks both @cjwatson and @m-hampl. I am able to process the upload and build the package successfully