OpenPrinting / cups-filters

filters, backends, driverless utility, ... - Everything which CUPS 2.x needs to be used on non-Mac systems
Apache License 2.0
155 stars 125 forks source link

compile error: backend/parallel.c:23:10: fatal error: cupsfilters/ieee1284.h: No such file or directory #562

Open colttt opened 10 months ago

colttt commented 10 months ago

Describe the bug Try to compile cups-filters

To Reproduce Steps to reproduce the behavior:

  1. on Debian stable system
  2. download wget https://github.com/OpenPrinting/cups-filters/releases/download/2.0.0/cups-filters-2.0.0.tar.gz
  3. unpack
  4. ./configure
  5. make
  6. doesn't work, because the file ieee1284.h does not exist, but will be included

Additional context try to confirm that my bug https://github.com/OpenPrinting/cups-filters/issues/560 with a newer cups-filter version.. (can confirm that also happens with the latest cups)

make
make  all-recursive
make[1]: Entering directory '/root/filterse/cups-filters-2.0.0'
make[2]: Entering directory '/root/filterse/cups-filters-2.0.0'
  CC       backend/parallel-parallel.o
backend/parallel.c:23:10: fatal error: cupsfilters/ieee1284.h: No such file or directory
   23 | #include <cupsfilters/ieee1284.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:2224: backend/parallel-parallel.o] Error 1
make[2]: Leaving directory '/root/filterse/cups-filters-2.0.0'
make[1]: *** [Makefile:2639: all-recursive] Error 1
make[1]: Leaving directory '/root/filterse/cups-filters-2.0.0'
make: *** [Makefile:1348: all] Error 2
zdohnal commented 10 months ago

Do you have libcupsfilters package installed? Version 2.0.0 forked cups-filters into five different projects - libcupsfilters, libppd, cups-browsed, cups-filters and braille-printer-app - you might be missing the dependency, here it should be libcupsfilters.

colttt commented 10 months ago

it's already installed:

apt search libcupsfilters
Sorting... Done
Full Text Search... Done
libcupsfilters-dev/stable,now 1.28.17-3 amd64 [installed]
  OpenPrinting CUPS Filters - Development files for the library

libcupsfilters1/stable,now 1.28.17-3 amd64 [installed,automatic]
  OpenPrinting CUPS Filters - Shared library
tillkamppeter commented 10 months ago

This is the wrong version of libcupsfilters. For building the current version of cups-filters you need libcupsfilters2 (libcupsfilters 2.x).

colttt commented 10 months ago

OMG what a dependency hell..

make
make  all-recursive
make[1]: Entering directory '/root/filterse/cups-filters-2.0.0'
make[2]: Entering directory '/root/filterse/cups-filters-2.0.0'
  CCLD     parallel
/usr/bin/ld: backend/parallel-parallel.o: in function `side_cb':
/root/filterse/cups-filters-2.0.0/backend/parallel.c:843: undefined reference to `cfIEEE1284GetDeviceID'
/usr/bin/ld: backend/parallel-parallel.o: in function `list_devices':
/root/filterse/cups-filters-2.0.0/backend/parallel.c:424: undefined reference to `cfIEEE1284GetDeviceID'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:1687: parallel] Error 1
make[2]: Leaving directory '/root/filterse/cups-filters-2.0.0'
make[1]: *** [Makefile:2639: all-recursive] Error 1
make[1]: Leaving directory '/root/filterse/cups-filters-2.0.0'
make: *** [Makefile:1348: all] Error 2

maybe it's still my fault

arunpatwa commented 8 months ago

@colttt Hi, have u resolved this bug , I am also facing same issue when running make file.. I have installed sudo apt-get install libcupsfilters-dev sudo apt install -y libcups2-dev

Error I was getting:

make all-recursive make[1]: Entering directory '/home/arunpatwa/Desktop/cups-filters' make[2]: Entering directory '/home/arunpatwa/Desktop/cups-filters' CC backend/parallel-parallel.o backend/parallel.c:23:10: fatal error: cupsfilters/ieee1284.h: No such file or directory 23 | #include <cupsfilters/ieee1284.h> | ^~~~~~~~ compilation terminated. make[2]: [Makefile:2223: backend/parallel-parallel.o] Error 1 make[2]: Leaving directory '/home/arunpatwa/Desktop/cups-filters' make[1]: [Makefile:2638: all-recursive] Error 1 make[1]: Leaving directory '/home/arunpatwa/Desktop/cups-filters' make: *** [Makefile:1347: all] Error 2

arunpatwa commented 6 months ago

Describe the bug Try to compile cups-filters

To Reproduce Steps to reproduce the behavior:

  1. on Debian stable system
  2. download wget https://github.com/OpenPrinting/cups-filters/releases/download/2.0.0/cups-filters-2.0.0.tar.gz
  3. unpack
  4. ./configure
  5. make
  6. doesn't work, because the file ieee1284.h does not exist, but will be included

Additional context try to confirm that my bug #560 with a newer cups-filter version.. (can confirm that also happens with the latest cups)

make
make  all-recursive
make[1]: Entering directory '/root/filterse/cups-filters-2.0.0'
make[2]: Entering directory '/root/filterse/cups-filters-2.0.0'
  CC       backend/parallel-parallel.o
backend/parallel.c:23:10: fatal error: cupsfilters/ieee1284.h: No such file or directory
   23 | #include <cupsfilters/ieee1284.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:2224: backend/parallel-parallel.o] Error 1
make[2]: Leaving directory '/root/filterse/cups-filters-2.0.0'
make[1]: *** [Makefile:2639: all-recursive] Error 1
make[1]: Leaving directory '/root/filterse/cups-filters-2.0.0'
make: *** [Makefile:1348: all] Error 2

I was able to resolve this issue. By installing libcupsfilters2 from Link: https://www.linuxfromscratch.org/blfs/view/systemd/pst/libcupsfilters.html also the required dependency.

arunpatwa commented 5 months ago

Both of the above errors can be also solved by installing libcupsfilters2 and libcupsfilter2-common "sudo apt-get install libcupsfilters2 libcupsfilters2-common" But libcupsfilters2 can not be installed by apt in <=Ubuntu22.04.3 LTS. I have installed it in Ubuntu23.10 and it worked . Thanks , I hope this will solve the issue for everyone , whoever facing this problem.