Page MenuHomeVyOS Platform

Add missing dependency on libssl-dev for building tacacs packages
Open, LowPublic

Description

In case of not using VyOS APT library, tacacs build will fail

dpkg-checkbuilddeps: error: Unmet build dependencies: libssl-dev

This fix explicitly adds libssl-dev (build dependency of libpam-tacplus) in tacacs/package.toml to make the build clear, and always successful (In case of rebuilding from scratch)

You can see the dependencies in the Build-Depends section in https://github.com/vyos/libpam-tacplus/blob/master/debian/control

Details on how to reproduce

nobi@lab:~$ docker run --rm -it vyos/vyos-build:current bash
Current UID/GID: 0/0
useradd warning: vyos_bld's uid 0 outside of the UID_MIN 1000 and UID_MAX 2000000000 range.
root@26aa4a896dce:/# git clone --depth=1 https://github.com/vyos/vyos-build
Cloning into 'vyos-build'...
cremote: Enumerating objects: 384, done.
remote: Counting objects: 100% (384/384), done.
remote: Compressing objects: 100% (289/289), done.
remote: Total 384 (delta 15), reused 275 (delta 8), pack-reused 0 (from 0)
Receiving objects: 100% (384/384), 575.86 KiB | 144.00 KiB/s, done.
Resolving deltas: 100% (15/15), done.
root@26aa4a896dce:/# cd vyos-build/scripts/package-build/tacacs/
root@26aa4a896dce:/vyos-build/scripts/package-build/tacacs# rm /etc/apt/sources.list.d/vyos-dev.list
root@26aa4a896dce:/vyos-build/scripts/package-build/tacacs# apt update
Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB]
Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
Get:4 http://deb.debian.org/debian bookworm-updates/main amd64 Packages.diff/Index [21.8 kB]
Ign:4 http://deb.debian.org/debian bookworm-updates/main amd64 Packages.diff/Index
Get:5 http://deb.debian.org/debian bookworm-updates/main amd64 Packages [6,924 B]
Get:6 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [274 kB]
Fetched 557 kB in 1s (778 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
5 packages can be upgraded. Run 'apt list --upgradable' to see them.
N: Repository 'http://deb.debian.org/debian bookworm InRelease' changed its 'Suite' value from 'stable' to 'oldstable'
N: Repository 'http://deb.debian.org/debian bookworm-updates InRelease' changed its 'Suite' value from 'stable-updates' to 'oldstable-updates'
N: Repository 'http://deb.debian.org/debian-security bookworm-security InRelease' changed its 'Suite' value from 'stable-security' to 'oldstable-security'
root@26aa4a896dce:/vyos-build/scripts/package-build/tacacs# ./build.py
I: Ensure Debian build dependencies are met
Hit:1 http://deb.debian.org/debian bookworm InRelease
Hit:2 http://deb.debian.org/debian bookworm-updates InRelease
Hit:3 http://deb.debian.org/debian-security bookworm-security InRelease
Reading package lists... Done
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'libpam0g-dev' instead of 'libpam-dev'
The following additional packages will be installed:
  libcap-ng-dev
The following NEW packages will be installed:
  autoconf-archive libaudit-dev libcap-ng-dev libpam0g-dev
0 upgraded, 4 newly installed, 0 to remove and 5 not upgraded.
Need to get 1,036 kB of archives.
After this operation, 6,987 kB of additional disk space will be used.
Get:1 http://deb.debian.org/debian bookworm/main amd64 autoconf-archive all 20220903-3 [775 kB]
Get:2 http://deb.debian.org/debian bookworm/main amd64 libcap-ng-dev amd64 0.8.3-1+b3 [31.3 kB]
Get:3 http://deb.debian.org/debian bookworm/main amd64 libaudit-dev amd64 1:3.0.9-1 [81.2 kB]
Get:4 http://deb.debian.org/debian bookworm/main amd64 libpam0g-dev amd64 1.5.2-6+deb12u1 [148 kB]
Fetched 1,036 kB in 0s (3,417 kB/s)
Selecting previously unselected package autoconf-archive.
(Reading database ... 39132 files and directories currently installed.)
Preparing to unpack .../autoconf-archive_20220903-3_all.deb ...
Unpacking autoconf-archive (20220903-3) ...
Selecting previously unselected package libcap-ng-dev:amd64.
Preparing to unpack .../libcap-ng-dev_0.8.3-1+b3_amd64.deb ...
Unpacking libcap-ng-dev:amd64 (0.8.3-1+b3) ...
Selecting previously unselected package libaudit-dev:amd64.
Preparing to unpack .../libaudit-dev_1%3a3.0.9-1_amd64.deb ...
Unpacking libaudit-dev:amd64 (1:3.0.9-1) ...
Selecting previously unselected package libpam0g-dev:amd64.
Preparing to unpack .../libpam0g-dev_1.5.2-6+deb12u1_amd64.deb ...
Unpacking libpam0g-dev:amd64 (1.5.2-6+deb12u1) ...
Setting up libpam0g-dev:amd64 (1.5.2-6+deb12u1) ...
Setting up autoconf-archive (20220903-3) ...
Setting up libcap-ng-dev:amd64 (0.8.3-1+b3) ...
Setting up libaudit-dev:amd64 (1:3.0.9-1) ...
Processing triggers for man-db (2.11.2-2) ...
Cloning into 'libtacplus-map'...
remote: Enumerating objects: 71, done.
remote: Counting objects: 100% (71/71), done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 71 (delta 21), reused 57 (delta 17), pack-reused 0 (from 0)
Receiving objects: 100% (71/71), 37.30 KiB | 212.00 KiB/s, done.
Resolving deltas: 100% (21/21), done.
Already on 'master'
Your branch is up to date with 'origin/master'.
I: Patch directory patches/libtacplus-map does not exist, skipping patch application
I: Tarball created: libtacplus-map_master.tar.gz
dpkg-buildpackage: info: source package libtacplus-map-build-deps
dpkg-buildpackage: info: source version 1.0.1-cl5.1.0u9
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Equivs Dummy Package Generator <root@26aa4a896dce>
dpkg-buildpackage: info: host architecture amd64
 dpkg-source --before-build .
 debian/rules clean
dh clean
   dh_clean
 debian/rules binary
dh binary
   dh_update_autotools_config
   dh_autoreconf
   create-stamp debian/debhelper-build-stamp
   dh_prep
   dh_auto_install --destdir=debian/libtacplus-map-build-deps/
   dh_install
   dh_installdocs
   dh_installchangelogs
   dh_perl
   dh_link
   dh_strip_nondeterminism
   dh_compress
   dh_fixperms
   dh_missing
   dh_installdeb
   dh_gencontrol
   dh_md5sums
   dh_builddeb
dpkg-deb: building package 'libtacplus-map-build-deps' in '../libtacplus-map-build-deps_1.0.1-cl5.1.0u9_all.deb'.
 dpkg-genbuildinfo --build=binary -O../libtacplus-map-build-deps_1.0.1-cl5.1.0u9_amd64.buildinfo
 dpkg-genchanges --build=binary -O../libtacplus-map-build-deps_1.0.1-cl5.1.0u9_amd64.changes
dpkg-genchanges: info: binary-only upload (no source code included)
 dpkg-source --after-build .
dpkg-buildpackage: info: binary-only upload (no source included)

The package has been created.
Attention, the package has been created in the current directory,
not in ".." as indicated by the message above!
Selecting previously unselected package libtacplus-map-build-deps.
(Reading database ... 40483 files and directories currently installed.)
Preparing to unpack libtacplus-map-build-deps_1.0.1-cl5.1.0u9_all.deb ...
Unpacking libtacplus-map-build-deps (1.0.1-cl5.1.0u9) ...
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up libtacplus-map-build-deps (1.0.1-cl5.1.0u9) ...
(Reading database ... 40487 files and directories currently installed.)
Preparing to unpack libtacplus-map-build-deps_1.0.1-cl5.1.0u9_all.deb ...
Unpacking libtacplus-map-build-deps (1.0.1-cl5.1.0u9) over (1.0.1-cl5.1.0u9) ...
Setting up libtacplus-map-build-deps (1.0.1-cl5.1.0u9) ...
dpkg-buildpackage: info: source package libtacplus-map
dpkg-buildpackage: info: source version 1.0.1-cl5.1.0u9
dpkg-buildpackage: info: source distribution RELEASED
dpkg-buildpackage: info: source changed by root <root@3da22e72fb7c>
dpkg-buildpackage: info: host architecture amd64
 dpkg-source --before-build .
 debian/rules clean
dh  clean --with autoreconf
   dh_clean
 debian/rules build
dh  build --with autoreconf
   dh_update_autotools_config
   dh_autoreconf
aclocal: warning: couldn't open directory 'config': No such file or directory
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'config'.
libtoolize: copying file 'config/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'config'.
libtoolize: copying file 'config/libtool.m4'
libtoolize: copying file 'config/ltoptions.m4'
libtoolize: copying file 'config/ltsugar.m4'
libtoolize: copying file 'config/ltversion.m4'
libtoolize: copying file 'config/lt~obsolete.m4'
configure.ac:20: warning: The macro `AC_CONFIG_HEADER' is obsolete.
configure.ac:20: You should run autoupdate.
./lib/autoconf/status.m4:719: AC_CONFIG_HEADER is expanded from...
configure.ac:20: the top level
configure.ac:36: warning: The macro `AM_PROG_LIBTOOL' is obsolete.
configure.ac:36: You should run autoupdate.
config/libtool.m4:101: AM_PROG_LIBTOOL is expanded from...
configure.ac:36: the top level
configure.ac:49: warning: The macro `AC_HEADER_STDC' is obsolete.
configure.ac:49: You should run autoupdate.
./lib/autoconf/headers.m4:704: AC_HEADER_STDC is expanded from...
configure.ac:49: the top level
configure.ac:57: warning: The macro `AC_HEADER_TIME' is obsolete.
configure.ac:57: You should run autoupdate.
./lib/autoconf/headers.m4:743: AC_HEADER_TIME is expanded from...
configure.ac:57: the top level
configure.ac:63: warning: The macro `AC_TYPE_SIGNAL' is obsolete.
configure.ac:63: You should run autoupdate.
./lib/autoconf/types.m4:776: AC_TYPE_SIGNAL is expanded from...
configure.ac:63: the top level
configure.ac:24: installing 'config/compile'
configure.ac:24: installing 'config/config.guess'
configure.ac:24: installing 'config/config.sub'
configure.ac:18: installing 'config/install-sh'
configure.ac:18: installing 'config/missing'
Makefile.am: installing './INSTALL'
Makefile.am: installing 'config/depcomp'
   dh_auto_configure
	./configure --build=x86_64-linux-gnu --prefix=/usr --includedir=\${prefix}/include --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info --sysconfdir=/etc --localstatedir=/var --disable-option-checking --disable-silent-rules --libdir=\${prefix}/lib/x86_64-linux-gnu --libexecdir=\${prefix}/lib/x86_64-linux-gnu --runstatedir=/run --disable-maintainer-mode --disable-dependency-tracking
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking how to print strings... printf
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... none
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for file... file
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for sys/time.h... yes
checking for sys/select.h... yes
checking for sys/socket.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for gcc... (cached) gcc
checking whether the compiler supports GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to enable C11 features... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) none
checking whether ln -s works... yes
checking whether make sets $(MAKE)... (cached) yes
checking for audit_getloginuid in -laudit... yes
checking for egrep... (cached) /usr/bin/grep -E
checking for dirent.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for sys/time.h... (cached) yes
checking for unistd.h... (cached) yes
checking for libaudit.h... yes
checking for an ANSI C-conforming const... yes
checking for size_t... yes
checking for GNU libc compatible realloc... yes
checking types of arguments for select... int,fd_set *,struct timeval *
checking return type of signal handlers... void
checking for gettimeofday... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
   dh_auto_build
	make -j8
make[1]: Entering directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
make  all-am
make[2]: Entering directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.   -Wdate-time -D_FORTIFY_SOURCE=2  -Ilibtac/include -Wno-error=address -Wno-error=stringop-truncation -g -O2 -ffile-prefix-map=/vyos-build/scripts/package-build/tacacs/libtacplus-map=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Werror -c -o libtacplus_map_la-map_tacplus_user.lo `test -f 'map_tacplus_user.c' || echo './'`map_tacplus_user.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wdate-time -D_FORTIFY_SOURCE=2 -Ilibtac/include -Wno-error=address -Wno-error=stringop-truncation -g -O2 -ffile-prefix-map=/vyos-build/scripts/package-build/tacacs/libtacplus-map=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Werror -c map_tacplus_user.c  -fPIC -DPIC -o .libs/libtacplus_map_la-map_tacplus_user.o
map_tacplus_user.c: In function 'chk_cleanup_map':
map_tacplus_user.c:388:31: warning: the comparison will always evaluate as 'true' for the address of 'tac_mappedname' will never be NULL [-Waddress]
  388 |             ((tmap.tac_mapuid || tmap.tac_mappedname) &&
      |                               ^~
In file included from map_tacplus_user.c:33:
map_tacplus_user.h:55:10: note: 'tac_mappedname' declared here
   55 |     char tac_mappedname[UT_NAMESIZE+1]; /* mapped name, for uid we are using */
      |          ^~~~~~~~~~~~~~
map_tacplus_user.c: In function 'lookup_all_mapped':
map_tacplus_user.c:740:9: warning: '__builtin_strncpy' specified bound depends on the length of the source argument [-Wstringop-truncation]
  740 |         strncpy(ret+retlen, map.tac_logname, llen+1);
      |         ^
map_tacplus_user.c:729:16: note: length computed here
  729 |         llen = strlen(map.tac_logname);
      |                ^~~~~~~~~~~~~~~~~~~~~~~
/bin/bash ./libtool  --tag=CC   --mode=link gcc  -Ilibtac/include -Wno-error=address -Wno-error=stringop-truncation -g -O2 -ffile-prefix-map=/vyos-build/scripts/package-build/tacacs/libtacplus-map=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Werror -version-info 1:0:0 -shared -Wl,--no-undefined -Wl,-z,relro -o libtacplus_map.la -rpath /usr/lib/x86_64-linux-gnu libtacplus_map_la-map_tacplus_user.lo -L.libs -laudit -laudit
libtool: link: gcc -shared  -fPIC -DPIC  .libs/libtacplus_map_la-map_tacplus_user.o   -L.libs -laudit  -g -O2 -fstack-protector-strong -Wl,--no-undefined -Wl,-z -Wl,relro   -Wl,-soname -Wl,libtacplus_map.so.1 -o .libs/libtacplus_map.so.1.0.0
libtool: link: (cd ".libs" && rm -f "libtacplus_map.so.1" && ln -s "libtacplus_map.so.1.0.0" "libtacplus_map.so.1")
libtool: link: (cd ".libs" && rm -f "libtacplus_map.so" && ln -s "libtacplus_map.so.1.0.0" "libtacplus_map.so")
libtool: link: ( cd ".libs" && rm -f "libtacplus_map.la" && ln -s "../libtacplus_map.la" "libtacplus_map.la" )
make[2]: Leaving directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
make[1]: Leaving directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
   dh_auto_test
	make -j8 check "TESTSUITEFLAGS=-j8 --verbose" VERBOSE=1
make[1]: Entering directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
make[1]: Leaving directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
   create-stamp debian/debhelper-build-stamp
 debian/rules binary
dh  binary --with autoreconf
   dh_testroot
   dh_prep
   dh_auto_install
	make -j1 install DESTDIR=/vyos-build/scripts/package-build/tacacs/libtacplus-map/debian/tmp AM_UPDATE_INFO_DIR=no
make[1]: Entering directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
make[2]: Entering directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
 /usr/bin/mkdir -p '/vyos-build/scripts/package-build/tacacs/libtacplus-map/debian/tmp/usr/lib/x86_64-linux-gnu'
 /bin/bash ./libtool   --mode=install /usr/bin/install -c   libtacplus_map.la '/vyos-build/scripts/package-build/tacacs/libtacplus-map/debian/tmp/usr/lib/x86_64-linux-gnu'
libtool: install: /usr/bin/install -c .libs/libtacplus_map.so.1.0.0 /vyos-build/scripts/package-build/tacacs/libtacplus-map/debian/tmp/usr/lib/x86_64-linux-gnu/libtacplus_map.so.1.0.0
libtool: install: (cd /vyos-build/scripts/package-build/tacacs/libtacplus-map/debian/tmp/usr/lib/x86_64-linux-gnu && { ln -s -f libtacplus_map.so.1.0.0 libtacplus_map.so.1 || { rm -f libtacplus_map.so.1 && ln -s libtacplus_map.so.1.0.0 libtacplus_map.so.1; }; })
libtool: install: (cd /vyos-build/scripts/package-build/tacacs/libtacplus-map/debian/tmp/usr/lib/x86_64-linux-gnu && { ln -s -f libtacplus_map.so.1.0.0 libtacplus_map.so || { rm -f libtacplus_map.so && ln -s libtacplus_map.so.1.0.0 libtacplus_map.so; }; })
libtool: install: /usr/bin/install -c .libs/libtacplus_map.lai /vyos-build/scripts/package-build/tacacs/libtacplus-map/debian/tmp/usr/lib/x86_64-linux-gnu/libtacplus_map.la
libtool: warning: remember to run 'libtool --finish /usr/lib/x86_64-linux-gnu'
 /usr/bin/mkdir -p '/vyos-build/scripts/package-build/tacacs/libtacplus-map/debian/tmp/usr/include/tacplus'
 /usr/bin/install -c -m 644 map_tacplus_user.h '/vyos-build/scripts/package-build/tacacs/libtacplus-map/debian/tmp/usr/include/tacplus'
make  install-data-hook
make[3]: Entering directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
/bin/bash /vyos-build/scripts/package-build/tacacs/libtacplus-map/config/install-sh -d /vyos-build/scripts/package-build/tacacs/libtacplus-map/debian/tmp/etc/sudoers.d
/usr/bin/install -c -m 644 tacplus.sudo /vyos-build/scripts/package-build/tacacs/libtacplus-map/debian/tmp/etc/sudoers.d/tacplus
make[3]: Leaving directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
make[2]: Leaving directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
make[1]: Leaving directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
   dh_install
   dh_installdocs
   dh_installchangelogs
   dh_perl
   dh_link
   dh_strip_nondeterminism
   dh_compress
   dh_fixperms
   dh_missing
   dh_strip
   dh_makeshlibs
   dh_shlibdeps
   dh_installdeb
   dh_gencontrol
   dh_md5sums
   dh_builddeb
dpkg-deb: building package 'libtacplus-map1' in '../libtacplus-map1_1.0.1-cl5.1.0u9_amd64.deb'.
dpkg-deb: building package 'libtacplus-map1-dbgsym' in '../libtacplus-map1-dbgsym_1.0.1-cl5.1.0u9_amd64.deb'.
dpkg-deb: building package 'libtacplus-map-dev' in '../libtacplus-map-dev_1.0.1-cl5.1.0u9_amd64.deb'.
 dpkg-genbuildinfo --build=binary -O../libtacplus-map_1.0.1-cl5.1.0u9_amd64.buildinfo
 dpkg-genchanges --build=binary -O../libtacplus-map_1.0.1-cl5.1.0u9_amd64.changes
dpkg-genchanges: info: binary-only upload (no source code included)
 debian/rules clean
dh  clean --with autoreconf
   dh_auto_clean
	make -j8 distclean
make[1]: Entering directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
rm -rf autom4te*.cache
test -z "libtacplus_map.la" || rm -f libtacplus_map.la
rm -rf .libs _libs
rm -f *.o
rm -f *.lo
rm -f *.tab.c
test -z "" || rm -f
rm -f *.rej *.orig *.lang dumpmap
rm -f config.h stamp-h1
rm -f libtool config.lt
test . = "." || test -z "" || rm -f
rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
rm -f ./so_locations
rm -f cscope.out cscope.in.out cscope.po.out cscope.files
rm -f config.status config.cache config.log configure.lineno config.status.lineno
rm -f ./.deps/libtacplus_map_la-map_tacplus_user.Plo
rm -f Makefile
make[1]: Leaving directory '/vyos-build/scripts/package-build/tacacs/libtacplus-map'
   dh_autoreconf_clean
   dh_clean
 dpkg-source --after-build .
dpkg-buildpackage: info: binary-only upload (no source included)
I: Cleaned up build dependency packages
Cloning into 'libpam-tacplus'...
remote: Enumerating objects: 122, done.
remote: Counting objects: 100% (122/122), done.
remote: Compressing objects: 100% (81/81), done.
remote: Total 122 (delta 29), reused 100 (delta 20), pack-reused 0 (from 0)
Receiving objects: 100% (122/122), 100.54 KiB | 81.00 KiB/s, done.
Resolving deltas: 100% (29/29), done.
Already on 'master'
Your branch is up to date with 'origin/master'.
I: Patch directory patches/libpam-tacplus does not exist, skipping patch application
I: Tarball created: libpam-tacplus_master.tar.gz
dpkg-buildpackage: info: source package libpam-tacplus-build-deps
dpkg-buildpackage: info: source version 1.4.3-cl5.1.0u5
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Equivs Dummy Package Generator <root@26aa4a896dce>
dpkg-buildpackage: info: host architecture amd64
 dpkg-source --before-build .
 debian/rules clean
dh clean
   dh_clean
 debian/rules binary
dh binary
   dh_update_autotools_config
   dh_autoreconf
   create-stamp debian/debhelper-build-stamp
   dh_prep
   dh_auto_install --destdir=debian/libpam-tacplus-build-deps/
   dh_install
   dh_installdocs
   dh_installchangelogs
   dh_perl
   dh_link
   dh_strip_nondeterminism
   dh_compress
   dh_fixperms
   dh_missing
   dh_installdeb
   dh_gencontrol
   dh_md5sums
   dh_builddeb
dpkg-deb: building package 'libpam-tacplus-build-deps' in '../libpam-tacplus-build-deps_1.4.3-cl5.1.0u5_all.deb'.
 dpkg-genbuildinfo --build=binary -O../libpam-tacplus-build-deps_1.4.3-cl5.1.0u5_amd64.buildinfo
 dpkg-genchanges --build=binary -O../libpam-tacplus-build-deps_1.4.3-cl5.1.0u5_amd64.changes
dpkg-genchanges: info: binary-only upload (no source code included)
 dpkg-source --after-build .
dpkg-buildpackage: info: binary-only upload (no source included)

The package has been created.
Attention, the package has been created in the current directory,
not in ".." as indicated by the message above!
Selecting previously unselected package libpam-tacplus-build-deps.
(Reading database ... 40487 files and directories currently installed.)
Preparing to unpack libpam-tacplus-build-deps_1.4.3-cl5.1.0u5_all.deb ...
Unpacking libpam-tacplus-build-deps (1.4.3-cl5.1.0u5) ...
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Correcting dependencies... Done
The following packages will be REMOVED:
  libpam-tacplus-build-deps
0 upgraded, 0 newly installed, 1 to remove and 5 not upgraded.
1 not fully installed or removed.
After this operation, 9,216 B disk space will be freed.
(Reading database ... 40491 files and directories currently installed.)
Removing libpam-tacplus-build-deps (1.4.3-cl5.1.0u5) ...
mk-build-deps: Unable to install libpam-tacplus-build-deps at /usr/bin/mk-build-deps line 459.
mk-build-deps: Unable to install all build-dep packages
Failed to build package libpam-tacplus: Command 'sudo mk-build-deps --install --tool "apt-get --yes --no-install-recommends"' returned non-zero exit status 1.
Selecting previously unselected package libtacplus-map-dev.
(Reading database ... 40487 files and directories currently installed.)
Preparing to unpack .../libtacplus-map-dev_1.0.1-cl5.1.0u9_amd64.deb ...
Unpacking libtacplus-map-dev (1.0.1-cl5.1.0u9) ...
Selecting previously unselected package libtacplus-map1-dbgsym.
Preparing to unpack .../libtacplus-map1-dbgsym_1.0.1-cl5.1.0u9_amd64.deb ...
Unpacking libtacplus-map1-dbgsym (1.0.1-cl5.1.0u9) ...
Selecting previously unselected package libtacplus-map1.
Preparing to unpack .../libtacplus-map1_1.0.1-cl5.1.0u9_amd64.deb ...
Unpacking libtacplus-map1 (1.0.1-cl5.1.0u9) ...
Setting up libtacplus-map1 (1.0.1-cl5.1.0u9) ...
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netedit' does not exist.
Setting up libtacplus-map-dev (1.0.1-cl5.1.0u9) ...
Setting up libtacplus-map1-dbgsym (1.0.1-cl5.1.0u9) ...
Processing triggers for libc-bin (2.36-9+deb12u10) ...
dpkg-buildpackage: info: source package libpam-tacplus
dpkg-buildpackage: info: source version 1.4.3-cl5.1.0u5
dpkg-buildpackage: info: source distribution RELEASED
dpkg-buildpackage: info: source changed by root <root@3da22e72fb7c>
dpkg-buildpackage: info: host architecture amd64
 dpkg-source --before-build .
dpkg-checkbuilddeps: error: Unmet build dependencies: libssl-dev
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
Command 'sudo dpkg -i ../libtacplus-map*.deb; dpkg-buildpackage -us -uc -tc -b' returned non-zero exit status 3.
I: Source packages build failed, ignoring - building binaries only
(Reading database ... 40504 files and directories currently installed.)
Preparing to unpack .../libtacplus-map-dev_1.0.1-cl5.1.0u9_amd64.deb ...
Unpacking libtacplus-map-dev (1.0.1-cl5.1.0u9) over (1.0.1-cl5.1.0u9) ...
Preparing to unpack .../libtacplus-map1-dbgsym_1.0.1-cl5.1.0u9_amd64.deb ...
Unpacking libtacplus-map1-dbgsym (1.0.1-cl5.1.0u9) over (1.0.1-cl5.1.0u9) ...
Preparing to unpack .../libtacplus-map1_1.0.1-cl5.1.0u9_amd64.deb ...
Unpacking libtacplus-map1 (1.0.1-cl5.1.0u9) over (1.0.1-cl5.1.0u9) ...
Setting up libtacplus-map1 (1.0.1-cl5.1.0u9) ...
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netshow' does not exist.
adduser: The group `netedit' does not exist.
Setting up libtacplus-map-dev (1.0.1-cl5.1.0u9) ...
Setting up libtacplus-map1-dbgsym (1.0.1-cl5.1.0u9) ...
Processing triggers for libc-bin (2.36-9+deb12u10) ...
dpkg-buildpackage: info: source package libpam-tacplus
dpkg-buildpackage: info: source version 1.4.3-cl5.1.0u5
dpkg-buildpackage: info: source distribution RELEASED
dpkg-buildpackage: info: source changed by root <root@3da22e72fb7c>
dpkg-buildpackage: info: host architecture amd64
 dpkg-source --before-build .
dpkg-checkbuilddeps: error: Unmet build dependencies: libssl-dev
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
Failed to build package libpam-tacplus: Command 'sudo dpkg -i ../libtacplus-map*.deb; dpkg-buildpackage -us -uc -tc -b' returned non-zero exit status 3.
I: Cleaned up build dependency packages
Cloning into 'libnss-tacplus'...
remote: Enumerating objects: 213, done.
remote: Counting objects: 100% (44/44), done.
remote: Compressing objects: 100% (31/31), done.
remote: Total 213 (delta 12), reused 19 (delta 7), pack-reused 169 (from 1)
Receiving objects: 100% (213/213), 412.42 KiB | 70.00 KiB/s, done.
Resolving deltas: 100% (110/110), done.
Already on 'master'
Your branch is up to date with 'origin/master'.
I: Patch directory patches/libnss-tacplus does not exist, skipping patch application
I: Tarball created: libnss-tacplus_master.tar.gz
dpkg-buildpackage: info: source package libnss-tacplus-build-deps
dpkg-buildpackage: info: source version 1.0.4-cl5.1.0u11.1
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Equivs Dummy Package Generator <root@26aa4a896dce>
dpkg-buildpackage: info: host architecture amd64
 dpkg-source --before-build .
 debian/rules clean
dh clean
   dh_clean
 debian/rules binary
dh binary
   dh_update_autotools_config
   dh_autoreconf
   create-stamp debian/debhelper-build-stamp
   dh_prep
   dh_auto_install --destdir=debian/libnss-tacplus-build-deps/
   dh_install
   dh_installdocs
   dh_installchangelogs
   dh_perl
   dh_link
   dh_strip_nondeterminism
   dh_compress
   dh_fixperms
   dh_missing
   dh_installdeb
   dh_gencontrol
   dh_md5sums
   dh_builddeb
dpkg-deb: building package 'libnss-tacplus-build-deps' in '../libnss-tacplus-build-deps_1.0.4-cl5.1.0u11.1_all.deb'.
 dpkg-genbuildinfo --build=binary -O../libnss-tacplus-build-deps_1.0.4-cl5.1.0u11.1_amd64.buildinfo
 dpkg-genchanges --build=binary -O../libnss-tacplus-build-deps_1.0.4-cl5.1.0u11.1_amd64.changes
dpkg-genchanges: info: binary-only upload (no source code included)
 dpkg-source --after-build .
dpkg-buildpackage: info: binary-only upload (no source included)

The package has been created.
Attention, the package has been created in the current directory,
not in ".." as indicated by the message above!
Selecting previously unselected package libnss-tacplus-build-deps.
(Reading database ... 40504 files and directories currently installed.)
Preparing to unpack libnss-tacplus-build-deps_1.0.4-cl5.1.0u11.1_all.deb ...
Unpacking libnss-tacplus-build-deps (1.0.4-cl5.1.0u11.1) ...
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Correcting dependencies... Done
The following packages will be REMOVED:
  libnss-tacplus-build-deps
0 upgraded, 0 newly installed, 1 to remove and 5 not upgraded.
1 not fully installed or removed.
After this operation, 9,216 B disk space will be freed.
(Reading database ... 40508 files and directories currently installed.)
Removing libnss-tacplus-build-deps (1.0.4-cl5.1.0u11.1) ...
mk-build-deps: Unable to install libnss-tacplus-build-deps at /usr/bin/mk-build-deps line 459.
mk-build-deps: Unable to install all build-dep packages
Failed to build package libnss-tacplus: Command 'sudo mk-build-deps --install --tool "apt-get --yes --no-install-recommends"' returned non-zero exit status 1.
dpkg: error: cannot access archive '../libpam-tacplus*.deb': No such file or directory
dpkg-buildpackage: info: source package libnss-tacplus
dpkg-buildpackage: info: source version 1.0.4-cl5.1.0u11.1
dpkg-buildpackage: info: source distribution UNRELEASED
dpkg-buildpackage: info: source changed by Christian Breunig <christian@breunig.cc>
dpkg-buildpackage: info: host architecture amd64
 dpkg-source --before-build .
dpkg-checkbuilddeps: error: Unmet build dependencies: libtac-dev (>= 1.4.1~) libpam-tacplus-dev
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
Command 'sudo dpkg -i ../libtac*.deb ../libpam-tacplus*.deb; dpkg-buildpackage -us -uc -tc -b' returned non-zero exit status 3.
I: Source packages build failed, ignoring - building binaries only
dpkg: error: cannot access archive '../libpam-tacplus*.deb': No such file or directory
dpkg-buildpackage: info: source package libnss-tacplus
dpkg-buildpackage: info: source version 1.0.4-cl5.1.0u11.1
dpkg-buildpackage: info: source distribution UNRELEASED
dpkg-buildpackage: info: source changed by Christian Breunig <christian@breunig.cc>
dpkg-buildpackage: info: host architecture amd64
 dpkg-source --before-build .
dpkg-checkbuilddeps: error: Unmet build dependencies: libtac-dev (>= 1.4.1~) libpam-tacplus-dev
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
Failed to build package libnss-tacplus: Command 'sudo dpkg -i ../libtac*.deb ../libpam-tacplus*.deb; dpkg-buildpackage -us -uc -tc -b' returned non-zero exit status 3.
I: Cleaned up build dependency packages
root@26aa4a896dce:/vyos-build/scripts/package-build/tacacs#

Details

Version
-
Is it a breaking change?
Perfectly compatible
Issue type
Internal change (not visible to end users)

Event Timeline

nobiit created this object in space S1 VyOS Public.
dmbaturin renamed this task from Add miss dependency libssl-dev for build tacacs to Add missing dependency on libssl-dev for building tacacs packages.Thu, Nov 13, 1:08 AM
dmbaturin edited projects, added VyOS 1.5 Circinus (2025.11); removed VyOS Rolling.
dmbaturin changed Is it a breaking change? from Unspecified (possibly destroys the router) to Perfectly compatible.
dmbaturin changed Issue type from Unspecified (please specify) to Internal change (not visible to end users).