Package: libgiac-dev Version: 1.6.0.31+dfsg1-1 Severity: important X-Debbugs-Cc: [email protected]
Installing config.h enables Giac to expose features in its public headers (as intended by [1]). This also enables preprocessor-guarded includes for a variety of libraries used by Giac, effectively making them dependencies of libgiac-dev. Currently only the runtime variants are declared as dependencies, so even simple programs building against Giac can fail because of missing headers. The exact list of includes enabled by the install of config.h depends on Giac's compile options; the packaged version of libgiac-dev in Sid requires libgmp-dev, libmpfr-dev, libmpfi-dev, libgsl-dev, libntl-dev, and libfltk1.3-dev for programs to compile. The dependency to libfltk1.3-dev is unfortunate as FLTK in turn requires a full graphics stack, which is not expected from libgiac-dev. I am unsure whether there is a better way to handle it. ## Sample steps to reproduce Create a minimal Debian Sid install with libgiac-dev but without any of the packages listed above. % sudo debootstrap sid libgiac-dev-bugreport/ http://ftp.debian.org/debian/ % sudo chroot libgiac-dev-bugreport/ % apt install build-essential libgiac-dev Try to build a sample Giac program: #include <giac/config.h> #include <giac/giac.h> int main(void) { giac::context ct; std::cout << giac::_factor(giac::gen("x^2-1", &ct), &ct) << "\n"; return 0; } % g++ giac-example.cpp -o giac-example -Wall -Wextra -lgiac In file included from /usr/include/giac/giac.h:3, from giac-example.cpp:2: /usr/include/giac/first.h:362:10: fatal error: gmp.h: No such file or directory 362 | #include "gmp.h" | ^~~~~~~ compilation terminated. Install the missing package and try again. The following headers will be found missing before build eventually succeeds: * gmp.h (libgmp-dev) * mpfr.h (libmpfr-dev) * mpfi.h (libmpfi-dev-common, but probably better installed through libmpfi-dev) * gsl/gsl_vector.h (libgsl-dev) * NTL/ZZXFactoring.h (libntl-dev) * FL/Enumerations.H (libfltk1.1-dev or libfltk1.3-dev) [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=972827 -- System Information: Debian Release: bullseye/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 5.9.9-arch1-1 (SMP w/2 CPU threads; PREEMPT) Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/dash Init: unable to detect Versions of packages libgiac-dev depends on: ii libgiac0 1.6.0.31+dfsg1-1 libgiac-dev recommends no packages. libgiac-dev suggests no packages. -- no debconf information

