zecure/shadowd

can't install package on debian jessie

Closed this issue · 2 comments

Hi,

I'm trying to install package on Debian Jessie but I get unsatisfied depedency. Any ideas what I can do to install it? Thanks in advance.

Here's the ouput I get

/tmp/shadowd/build$ dpkg -i /root/shadowd_2.0.1-1_amd64.deb
(Reading database ... 233529 files and directories currently installed.)
Preparing to unpack .../root/shadowd_2.0.1-1_amd64.deb ...
Unpacking shadowd (2.0.1-1) over (2.0.1-1) ...
dpkg: dependency problems prevent configuration of shadowd:
 shadowd depends on libboost-program-options1.49.0 (>= 1.49.0-1); however:
  Package libboost-program-options1.49.0 is not installed.
 shadowd depends on libboost-regex1.49.0 (>= 1.49.0-1); however:
  Package libboost-regex1.49.0 is not installed.
 shadowd depends on libboost-system1.49.0 (>= 1.49.0-1); however:
  Package libboost-system1.49.0 is not installed.
 shadowd depends on libboost-test1.49.0 (>= 1.49.0-1); however:
  Package libboost-test1.49.0 is not installed.
 shadowd depends on libboost-thread1.49.0 (>= 1.49.0-1); however:
  Package libboost-thread1.49.0 is not installed.

dpkg: error processing package shadowd (--install):
 dependency problems - leaving unconfigured
Processing triggers for systemd (215-17+deb8u5) ...
Processing triggers for man-db (2.7.0.2-5) ...
Errors were encountered while processing:
 shadowd

/tmp/shadowd/build$ gdebi ~/shadowd_2.0.1-1_amd64.deb
Reading package lists... Done
Building dependency tree
Reading state information... Done
Building data structures... Done
Building data structures... Done
This package is uninstallable
Dependency is not satisfiable: libboost-program-options1.49.0 (>= 1.49.0-1)


Sun Jan 01 14:35:39[root@]
/tmp/shadowd/build$ dpkg -l | grep 'libboost-program-options'
ii  libboost-program-options-dev:amd64     1.55.0.2                             amd64        program options library for C++ (default version)
ii  libboost-program-options1.55-dev:amd64 1.55.0+dfsg-3                        amd64        program options library for C++
ii  libboost-program-options1.55.0:amd64   1.55.0+dfsg-3                        amd64        program options library for C++
ii  sw-libboost-program-options1.55.0      1.55.0-debian8.0.15052218            amd64        Boost program_options C++ library
Sun Jan 01 14:36:06[root@]
/tmp/shadowd/build$

So I then tried to manually compile the package but I'm getting another error at
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_BUILD_TYPE=Release ..

-- Boost version: 1.55.0
-- Found the following Boost libraries:
--   program_options
--   system
--   thread
--   regex
--   unit_test_framework
CMake Error at CMakeLists.txt:30 (message):
  libdbi is missing


-- Configuring incomplete, errors occurred!
See also "/tmp/shadowd/build/CMakeFiles/CMakeOutput.log".
See also "/tmp/shadowd/build/CMakeFiles/CMakeError.log".

But the packages seem installed for libdbi

/tmp/shadowd/build$ dpkg -l | grep 'libdbi'
ii  libdbd-mysql:amd64                     0.9.0-3                              amd64        MySQL database server driver for libdbi
ii  libdbd-pgsql:amd64                     0.9.0-3                              amd64        PostgreSQL database server driver for libdbi
ii  libdbi-dev                             0.9.0-4                              amd64        DB Independent Abstraction Layer for C  -- development files
ii  libdbi-perl                            1.631-3+b1                           amd64        Perl Database Interface (DBI)
ii  libdbi1:amd64                          0.9.0-4                              amd64        DB Independent Abstraction Layer for C -- shared library

/tmp/shadowd/build$ locate *libdbi*so*o.*
/usr/lib/x86_64-linux-gnu/libdbi.so
/usr/lib/x86_64-linux-gnu/libdbi.so.1
/usr/lib/x86_64-linux-gnu/libdbi.so.1.1.0
Sun Jan 01 14:41:27[root@]

Hi,

the Debian package was build for Wheezy, that is the reason why the dependencies are not met. Packages for Jessie will also follow later.

So currently self-compiling is the best choice for Jessie, as you tried. The installed libdbi packages are correct. Since it normally compiles fine on Jessie, my guess would be that it is the CMake cache that still thinks the dependency is missing even though it is not. Try to erase your build directory, create a new one and run CMake again.

Best regards,
Hendrik

That was spot on. Thank you very much I was able to proceed with compiling from source.