cups VS glibc

Compare cups vs glibc and see what are their differences.

glibc

Unofficial mirror of sourceware glibc repository. Updated daily. (by bminor)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
cups glibc
30 45
908 1,213
3.9% 3.2%
9.4 9.8
8 days ago 9 days ago
C C
Apache License 2.0 GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

cups

Posts with mentions or reviews of cups. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-12.
  • On the harm shareholders can do to OpenSource
    3 projects | /r/linux | 12 Jul 2023
    And this disagrees with you: https://openprinting.github.io/cups/
  • Why is there no open source firmware for laser or inkjet printers? (2019)
    1 project | news.ycombinator.com | 14 May 2023
    Apple apparently acquired CUPS years after it was available as an OSS project. It fits given that I was using cups so long ago and never heard it as an apple project.

    https://openprinting.github.io/cups/

  • I hate printers
    1 project | /r/iiiiiiitttttttttttt | 16 Feb 2023
    CUPS
  • How to configure & take print on Linux?
    2 projects | dev.to | 16 Nov 2022
    In December 2019, Michael left Apple to start Lakeside Robotics. In September 2020 he teamed up with the OpenPrinting developers to fork Apple CUPS to continue its development. Today Apple CUPS is the version of CUPS that is provided with macOS® and iOS® while OpenPrinting CUPS is the version of CUPS being further developed by OpenPrinting for all operating systems.
  • M1 GPU driver passes >99% of the dEQP-GLES2 compliance tests.
    2 projects | /r/linux | 23 Oct 2022
    This isn’t entirely true. There’s Apple CUPS (which is now focused on macOS/iOS) and OpenPrinting CUPS, which is used by Linux/other systems.
  • Classic 🙄
    1 project | /r/ProgrammerHumor | 10 Oct 2022
    Not for long.
  • I want printer that is compatible with Linux.
    1 project | /r/linuxhardware | 10 Aug 2022
    Printer support on Linux is actually pretty great thanks to CUPS. I'd expect most of not all mainstream brands to work.
  • Today I learned that the Free Software Movement was ignited by a jammed Xerox laser printer
    2 projects | /r/linux | 23 Jul 2022
    Has that improved/changed since IPP Everywhere became a thing & CUPS moved to that?
  • Merits of a "Just Works" distro (A Rant)
    2 projects | /r/pop_os | 5 Jul 2022
    Consider visiting the OpenPrinting CUPS repository, clicking Report a Bug and describing your issue.
  • Unable to print from CUPS print server, "Filter failed" error
    1 project | /r/linuxquestions | 8 Jun 2022
    juin 08 09:36:16 ServeurImpression systemd[1]: Starting CUPS Scheduler... juin 08 09:36:16 ServeurImpression cupsd[826]: Printer drivers are deprecated and will stop working in a future version of CUPS. See https://github.com/OpenPrinting/cups/issues/103 juin 08 09:36:16 ServeurImpression systemd[1]: Started CUPS Scheduler. juin 08 09:36:16 ServeurImpression cupsd[826]: REQUEST localhost - - "POST / HTTP/1.1" 200 349 Create-Printer-Subscriptions successful-ok juin 08 09:36:16 ServeurImpression cupsd[826]: REQUEST localhost - - "POST / HTTP/1.1" 200 176 Create-Printer-Subscriptions successful-ok juin 08 09:36:22 ServeurImpression cupsd[826]: [Client 5] Returning IPP client-error-not-possible for Cancel-Job (ipp://localhost/jobs/12) from localhost. juin 08 09:36:22 ServeurImpression cupsd[826]: REQUEST localhost - - "POST /jobs HTTP/1.1" 200 149 Cancel-Job client-error-not-possible juin 08 09:36:43 ServeurImpression cupsd[826]: REQUEST 10.11.111.175 - - "POST /printers/1_Noir_Recto_Verso HTTP/1.1" 200 565 Validate-Job successful-ok juin 08 09:36:43 ServeurImpression cupsd[826]: REQUEST 10.11.111.175 - - "POST /printers/1_Noir_Recto_Verso HTTP/1.1" 200 530 Create-Job successful-ok juin 08 09:36:43 ServeurImpression cupsd[826]: REQUEST 10.11.111.175 - - "POST /printers/1_Noir_Recto_Verso HTTP/1.1" 200 1027996 Send-Document successful-ok juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 27 0, offset 594103): dictionary has duplicated key /x34; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 27 0, offset 594103): dictionary has duplicated key /x34; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 27 0, offset 594103): dictionary has duplicated key /x34; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 27 0, offset 594103): dictionary has duplicated key /x34; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 27 0, offset 594103): dictionary has duplicated key /x36; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 27 0, offset 594103): dictionary has duplicated key /x38; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 76 0, offset 661336): dictionary has duplicated key /x34; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 76 0, offset 661336): dictionary has duplicated key /x36; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 76 0, offset 661336): dictionary has duplicated key /x38; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 76 0, offset 661336): dictionary has duplicated key /x36; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 76 0, offset 661336): dictionary has duplicated key /x38; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 76 0, offset 661336): dictionary has duplicated key /x34; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 76 0, offset 661336): dictionary has duplicated key /x36; last occurrence overrides earlier ones juin 08 09:36:43 ServeurImpression cupsd[826]: [Job 13] /var/spool/cups/d00013-001 (object 76 0, offset 661336): dictionary has duplicated key /x38; last occurrence overrides earlier ones juin 08 09:36:49 ServeurImpression cupsd[826]: 1_Noir_Recto_Verso silejonu 13 [08/Jun/2022:09:36:49 +0200] total 0 - 10.11.111.175 Ateliers informatiques Juin 2022.pdf - - juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Job stopped due to filter errors; please consult the syslog file for details. juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] The following messages were recorded from 09:36:43 to 09:36:49 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Applying default options... juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Adding start banner page "none". juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Queued on "1_Noir_Recto_Verso" by "silejonu". juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] File of type application/pdf queued by "silejonu". juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Adding end banner page "none". juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] time-at-processing=1654673803 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] 3 filters for job: juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] pdftopdf (application/pdf to application/vnd.cups-pdf, cost 66) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] pdftops (application/vnd.cups-pdf to application/vnd.cups-postscript, cost 100) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] KMbeuEmpPS.pl (application/vnd.cups-postscript to printer/1_Noir_Recto_Verso, cost 0) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] job-sheets=none,none juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] argv[0]="1_Noir_Recto_Verso" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] argv[1]="13" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] argv[2]="silejonu" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] argv[3]="Ateliers informatiques Juin 2022.pdf" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] argv[4]="1" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] argv[5]="noCollate ColorModel=RGB InputSlot=Auto job-uuid=urn:uuid:310cc375-f308-3416-7bd8-7b7498d4e400 MediaType= number-up=1 OutputBin=Default PageSize=A4 job-originating-host-name=10.11.111.175 date-time-at-creation= date-time-at-processing= time-at-creation=1654673803 time-at-processing=1654673803" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] argv[6]="/var/spool/cups/d00013-001" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[0]="CUPS_CACHEDIR=/var/cache/cups" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[1]="CUPS_DATADIR=/usr/share/cups" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[2]="CUPS_DOCROOT=/usr/share/cups/www" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[3]="CUPS_FONTPATH=/usr/share/cups/fonts" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[4]="CUPS_REQUESTROOT=/var/spool/cups" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[5]="CUPS_SERVERBIN=/usr/lib/cups" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[6]="CUPS_SERVERROOT=/etc/cups" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[7]="CUPS_STATEDIR=/run/cups" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[8]="HOME=/var/spool/cups/tmp" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[9]="PATH=/usr/lib/cups/filter:/usr/bin:/usr/sbin:/bin:/usr/bin" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[10]="SERVER_ADMIN=root@ServeurImpression" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[11]="SOFTWARE=CUPS/2.3.3op2" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[12]="TMPDIR=/var/spool/cups/tmp" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[13]="USER=root" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[14]="CUPS_MAX_MESSAGE=2047" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[15]="CUPS_SERVER=/run/cups/cups.sock" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[16]="CUPS_ENCRYPTION=IfRequested" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[17]="IPP_PORT=631" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[18]="CHARSET=utf-8" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[19]="LANG=fr_FR.UTF-8" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[20]="PPD=/etc/cups/ppd/1_Noir_Recto_Verso.ppd" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[21]="RIP_MAX_CACHE=128m" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[22]="CONTENT_TYPE=application/pdf" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[23]="DEVICE_URI=socket://10.11.111.50" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[24]="PRINTER_INFO=1 Noir Recto/Verso" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[25]="PRINTER_LOCATION=Cyber-Base" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[26]="PRINTER=1_Noir_Recto_Verso" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[27]="PRINTER_STATE_REASONS=none" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[28]="CUPS_FILETYPE=document" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[29]="FINAL_CONTENT_TYPE=application/vnd.cups-postscript" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] envp[30]="AUTH_I****" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Started filter /usr/lib/cups/filter/pdftopdf (PID 1382) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Started filter /usr/lib/cups/filter/pdftops (PID 1383) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Started filter /usr/lib/cups/filter/KMbeuEmpPS.pl (PID 1384) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Started backend /usr/lib/cups/backend/socket (PID 1385) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] pdftops - copying to temp print file \"/var/spool/cups/tmp/0056762a6a077\" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: +connecting-to-device juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Looking up \"10.11.111.50\"... juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -connecting-to-device juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] 10.11.111.50=10.11.111.50 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Can\'t locate FindBin.pm in @INC (you may need to install the FindBin module) (@INC contains: /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at /usr/lib/cups/filter/KMbeuEmpPS.pl line 1925. juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] BEGIN failed--compilation aborted at /usr/lib/cups/filter/KMbeuEmpPS.pl line 1925. juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PID 1384 (/usr/lib/cups/filter/KMbeuEmpPS.pl) stopped with status 2. juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Hint: Try setting the LogLevel to "debug" to find out more. juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] pdftopdf: Last filter determined by the PPD: KMbeuEmpPS.pl; FINAL_CONTENT_TYPE: application/vnd.cups-postscript => pdftopdf will not log pages in page_log. juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PDF interactive form and annotation flattening done via QPDF juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] hrDeviceDesc=\"KONICA MINOLTA bizhub C250i\" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] prtMarkerColorantValue.1.1 = \"cyan\" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PID 1382 (/usr/lib/cups/filter/pdftopdf) exited with no errors. juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] prtMarkerColorantValue.1.2 = \"magenta\" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] prtMarkerColorantValue.1.3 = \"yellow\" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Printer make and model: KONICA MINOLTA KONICA MINOLTA C360i juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Switching to Poppler\'s pdftops instead of Ghostscript for Brother, Minolta, Konica Minolta, Dell, and Apple LaserWriter 16/600, 4/600, 12/640, 12/600, 12/660 to work around bugs in the printer\'s PS interpreters juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Running command line for pstops: pstops 13 silejonu \'Ateliers informatiques Juin 2022.pdf\' 1 \'ColorModel=RGB InputSlot=Auto job-uuid=urn:uuid:310cc375-f308-3416-7bd8-7b7498d4e400 MediaType= OutputBin=Default PageSize=A4 job-originating-host-name=10.11.111.175 date-time-at-creation= date-time-at-processing= time-at-creation=1654673803 time-at-processing=1654673803\' juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] prtMarkerColorantValue.1.4 = \"black\" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Using image rendering resolution 600 dpi juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Running command line for pdftops: pdftops -level3 -origpagesizes -nocenter -r 600 /var/spool/cups/tmp/0056762a6a077 - juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Started filter pdftops (PID 1386) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Started filter pstops (PID 1387) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] ATTR: marker-colors=#00FFFF,#FF00FF,#FFFF00,#000000,none,none,none,none,none,none,none,none,none,none,none,none,none,none,none juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] ATTR: marker-names=\'\"Toner (Cyan)\"\',\'\"Toner (Magenta)\"\',\'\"Toner (Yellow)\"\',\'\"Toner (Black)\"\',\'\"\"\',\'\"\"\',\'\"\"\',\'\"\"\',\'\"\"\',\'\"\"\',\'\"\"\',\'\"\"\',\'\"Waste Toner Box\"\',\'\"\"\',\'\"\"\',\'\"\"\',\'\"Staple Cartridge\"\',\'\"Saddle Staple Cartridge1\"\',\'\"Saddle Staple Cartridge2\"\' juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] ATTR: marker-types=toner,toner,toner,toner,unknown,unknown,unknown,unknown,unknown,unknown,unknown,unknown,waste-toner,unknown,unknown,unknown,staples,staples,staples juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] ATTR: marker-levels=93,100,62,71,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] new_supply_state=0, change_state=ffff juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -developer-low-report juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -developer-empty-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -marker-supply-low-report juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -marker-supply-empty-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -opc-near-eol-report juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -opc-life-over-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -toner-low-report juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -toner-empty-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -waste-receptacle-almost-full-report juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -waste-receptacle-full-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -cleaner-life-almost-over-report juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -cleaner-life-over-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] new_state=0, change_state=ffff juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -media-empty-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -door-open-report juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -media-jam-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -input-tray-missing-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -output-tray-missing-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -marker-supply-missing-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -output-area-almost-full-report juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] STATE: -output-area-full-warning juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] backendWaitLoop(snmp_fd=5, addr=0x55e1d6b67ad8, side_cb=0x55e1d6222e10) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PID 1385 (/usr/lib/cups/backend/socket) exited with no errors. juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Page = 595x842; 12,12 to 583,830 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] slow_collate=0, slow_duplex=0, slow_order=0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Before copy_comments - %!PS-Adobe-3.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] %!PS-Adobe-3.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] %Produced by poppler pdftops version: 21.01.0 (http://poppler.freedesktop.org) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] %%LanguageLevel: 3 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] %%DocumentSuppliedResources: (atend) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] %%DocumentMedia: A4 595 842 0 () () juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] %%BoundingBox: 0 0 596 842 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] %%Pages: 4 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] %%EndComments juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Before copy_prolog - %%BeginProlog juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Before copy_setup - %%BeginSetup juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Before page loop - %%Page: 1 1 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Copying page 1... juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] pagew = 571.0, pagel = 818.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] bboxx = 0, bboxy = 0, bboxw = 595, bboxl = 842 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageLeft = 12.0, PageRight = 583.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageTop = 830.0, PageBottom = 12.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageWidth = 595.0, PageLength = 842.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Copying page 2... juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] pagew = 571.0, pagel = 818.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] bboxx = 0, bboxy = 0, bboxw = 595, bboxl = 842 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageLeft = 12.0, PageRight = 583.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageTop = 830.0, PageBottom = 12.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageWidth = 595.0, PageLength = 842.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Copying page 3... juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] pagew = 571.0, pagel = 818.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] bboxx = 0, bboxy = 0, bboxw = 595, bboxl = 842 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageLeft = 12.0, PageRight = 583.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageTop = 830.0, PageBottom = 12.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageWidth = 595.0, PageLength = 842.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Copying page 4... juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] pagew = 571.0, pagel = 818.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] bboxx = 0, bboxy = 0, bboxw = 595, bboxl = 842 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageLeft = 12.0, PageRight = 583.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageTop = 830.0, PageBottom = 12.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PageWidth = 595.0, PageLength = 842.0 juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] Wrote 4 pages... juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PID 1386 (pdftops) exited with no errors. juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PID 1387 (pstops) exited with no errors. juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] PID 1383 (/usr/lib/cups/filter/pdftops) exited with no errors. juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] End of messages juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] printer-state=3(idle) juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] printer-state-message="/var/spool/cups/d00013-001 (object 76 0, offset 661336): dictionary has duplicated key /x38; last occurrence overrides earlier ones" juin 08 09:36:49 ServeurImpression cupsd[826]: [Job 13] printer-state-reasons=none juin 08 09:36:54 ServeurImpression cupsd[826]: REQUEST localhost - - "POST /jobs HTTP/1.1" 200 149 Cancel-Job successful-ok

glibc

Posts with mentions or reviews of glibc. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-09.
  • I cut GTA Online loading times by 70% (2021)
    3 projects | news.ycombinator.com | 9 Jan 2024
  • Cray-1 performance vs. modern CPUs
    4 projects | news.ycombinator.com | 25 Dec 2023
    I wonder if you’re using a different definition of ‘vectorized’ from the one I would use. For example glibc provides a vectorized strlen. Here is the sse version: https://github.com/bminor/glibc/blob/master/sysdeps/x86_64/m...

    It’s pretty simple to imagine how to write an unoptimized version: read a vector from the start of the string, compare it to 0, convert that to a bitvector, test for equal to zero, then loop or clz and finish.

    I would call this vectorized because it operates on 16 bytes (sse) at a time.

    There are a few issues:

    1. You’re still spending a lot of time in the scalar code checking loop conditions.

    2. You’re doing unaligned reads which are slower on old processors

    3. You may read across a cache line forcing you to pull a second line into cache even if the string ends before then.

    4. You may read across a page boundary which could cause a segfault if the next page is not accessible

    So the fixes are to do 64-byte (ie cache line) aligned accesses which also means page-aligned (so you won’t read from a page until you know the string doesn’t end in the previous page). That deals with alignment problems. You read four vector registers at a time but this doesn’t really cost much more if the string is shorter as it all comes from one cache line. Another trick in the linked code is that it first finds the cache line by reading the first 16 bytes then merging in the next 3 groups with unsigned-min, so it only requires one test against a zero vector instead of 4. Then it finds the zero in the cache line. You need to do a bit of work in the first iteration to become aligned. With AVX, you can use mask registers on reads to handle that first step instead.

  • Setenv Is Not Thread Safe and C Doesn't Want to Fix It
    6 projects | news.ycombinator.com | 19 Nov 2023
    That was also my thought. To my knowledge `/etc/localtime` is the creation of Arthur David Olson, the founder of the tz database (now maintained by IANA), but his code never read `/etc/localtime` multiple times unless `TZ` environment variable was changed. Tzcode made into glibc but Ulrich Drepper changed it to not cache `/etc/localtime` when `TZ` is unset [1]; I wasn't able to locate the exact rationale, given that the commit was very ancient (1996-12) and no mailing list archive is available for this time period.

    [1] https://github.com/bminor/glibc/commit/68dbb3a69e78e24a778c6...

  • CTF Writeup: Abusing select() to factor RSA
    2 projects | news.ycombinator.com | 11 Nov 2023
    That's not really what the problem is. The actual code is fine.

    The issue is that the definition of `fd_set` has a constant size [1]. If you allocate the memory yourself, the select() system call will work with as many file descriptors as you care to pass to it. You can see that both glibc [2] and the kernel [3] support arbitrarily large arrays.

    [1] https://github.com/bminor/glibc/blob/master/misc/sys/select....

    [2] https://github.com/bminor/glibc/blob/master/sysdeps/unix/sys...

    [3] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin...

  • How are threads created in Linux x86_64
    3 projects | dev.to | 22 Sep 2023
    The source code for that is here.
  • Using Uninitialized Memory for Fun and Profit (2008)
    3 projects | news.ycombinator.com | 3 Sep 2023
    Expanding macro gives three GCC function attributes [2]: `__attribute__ ((malloc))`, `__attribute__ ((alloc_size(1)))` and `__attribute__ ((warn_unused_result))`. They are required for GCC (and others recognizing them) to actually ensure that they behave as the standard dictates. Your own malloc-like functions won't be treated same unless you give similar attributes.

    [1] https://github.com/bminor/glibc/blob/807690610916df8aef17cd1...

    [2] https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attribute...

  • “csinc”, the AArch64 instruction you didn’t know you wanted
    2 projects | news.ycombinator.com | 7 Jun 2023
    IFunc relocations is what enables glibc to dynamically choose the best memcpy routine to use at runtime based on the CPU.

    see https://github.com/bminor/glibc/blob/glibc-2.31/sysdeps/x86_...

  • memmove() implementation in strictly conforming C -- possible?
    2 projects | /r/C_Programming | 27 Apr 2023
    memmove can be very well implemented in pure C, libc implementations usually have a "generic" (meaning, architecture independent) fallback. Here is musl generic implementation and its x86-64 assembly implementation. For glibc, implementation is a bit more complex, having multiple architectures implemented, but you could find a generic implementation with these two files: memmove.c and generic/memcopy.h.
  • Fedora 38 LLVM vs. Team Fortress 2
    6 projects | news.ycombinator.com | 24 Apr 2023
    Yeah, looks like the Q_strcat(pszContentPath, "/"); is invalid, as glibc has only allocated exactly enough to fit the path in the buffer returned by realpath().

    Interestingly, the open group spec says that a null argument to realpath is "Implementation defined" [0]

    And the linux (glibc) man pages say it allocates a buffer "Up to PATH_MAX" [1]

    I guess "strlen(path)" is "Up to PATH_MAX", but the man page seems unclear - you could read that as implying the buffer is always allocated to PATH_MAX size, but that's not what seems to be happening, just effectively calling strdup() [2]. I have no idea how to feed back to the linux man pages, but might be worth clarifying there.

    [0] https://pubs.opengroup.org/onlinepubs/009696799/functions/re...

    [1] https://linux.die.net/man/3/realpath

    [2] https://github.com/bminor/glibc/blob/0b9d2d4a76508fdcbd9f421...

  • Method implementations
    2 projects | /r/cpp_questions | 15 Feb 2023
    For the actual sources you will have to look at one of the mirrors of the C standard library, such as https://github.com/bminor/glibc/tree/master/sysdeps/ieee754/dbl-64

What are some alternatives?

When comparing cups and glibc you can also consider the following projects:

CUPS - Apple CUPS Sources

musl - Unofficial mirror of etalabs musl repository. Updated daily.

xnu

cosmopolitan - build-once run-anywhere c library

pacstall - An AUR-inspired package manager for Ubuntu

dns - DNS library in Go

nixos - NixOS Configuration

0.30000000000000004 - Floating Point Math Examples

nixos - My NixOS Configurations

json-c - https://github.com/json-c/json-c is the official code repository for json-c. See the wiki for release tarballs for download. API docs at http://json-c.github.io/json-c/

opensource-management-portal - Microsoft's monolithic, opinionated Open Source Management Portal enabling enterprise scale self-service powered by the GitHub API 🏔🧑‍💻🧰

degasolv - Democratize dependency management.