我应该如何从源代码安装 cups-pdf?

我应该如何从源代码安装 cups-pdf?

在 Ubuntu 12.10 上,我想安装 cups-pdf。使用apt-get install cups-pdf没问题,但我想将其安装在代码源中。

这是我尝试过的:

  1. 下载代码http://www.physik.uni-wuerzburg.de/~vrbehr/cups-pdf/src/
  2. 构建 cups-pdf:

    gcc -o cups-pdf `cups-config --cflags` cups-pdf.c `cups-config --libs`
    
  3. 运行以下命令:

    cp cups-pdf /usr/lib/cups/backend/
    cp ../extra/cups-pdf.conf /etc/cups
    cp ../extra/CUPS-PDF_opt.ppd  /usr/share/cups/model/CUPS-PDF_opt.ppd 
    lpadmin -p PDFprinter -E -v cups-pdf:/ -P /usr/share/cups/model/CUPS-PDF_opt.ppd 
    lpadmin -d PDFprinter
    
  4. 尝试将文件打印为 PDF:

    lp Hello.c 
    
  5. 什么都没发生

答案1

好的。我假设有一个包已经为你准备好了,不需要构建,只需运行即可:

sudo apt-get install cups-pdf

该软件包的版本为 2.6.1。与您要构建的版本相同!如果您仍想继续,请查看说明:

如果您不喜欢将 /etc/cups 作为配置文件的位置,请编辑 src/cups-pdf.h。

这个应该还可以吧。

要编译 CUPS-PDF,请在 src/ 目录中调用 gcc:

gcc -O9 -s -lcups -o cups-pdf cups-pdf.c

注意:您必须安装 CUPS 的开发包才能构建 CUPS-PDF

您没有正确执行此操作。您首先需要安装 CUPS 开发库:

sudo apt-get install libcups2-dev

然后使用上面的命令进行编译:

gcc -O9 -s -lcups -o cups-pdf cups-pdf.c
cups-pdf.c: In function ‘read_config_ppd’:
cups-pdf.c:289:3: warning: ‘ppdFirstOption’ is deprecated (declared at /usr/include/cups/ppd.h:431) [-Wdeprecated-declarations]
   option = ppdFirstOption(ppd_file);
   ^
cups-pdf.c:292:5: warning: ‘ppdNextOption’ is deprecated (declared at /usr/include/cups/ppd.h:433) [-Wdeprecated-declarations]
     option = ppdNextOption(ppd_file);
     ^

这些是构建警告,您可以忽略它们。

要安装二进制文件,只需将 cups-pdf 复制到 CUPS 的后端目录(通常是 /usr/lib/cups/backend 或 /usr/lib64/...)。

如果您有 64 位系统,则正确的是 /usr/lib64,如果您有 32 位系统,则正确的是 /usr/lib。

现在将 extra/cups-pdf.conf 复制到 /etc/cups(或您在上面的 cups-pdf.h 中选择的任何位置)。在这里,您可以在运行时设置 CUPS-PDF 的所有属性,而无需重新启动任何服务。(大多数系统上默认设置应该可以正常工作。)

还行吧。

如果您想使用 CUPS-PDF 附带的彩色 PostScript 驱动程序,请转到 extra/ 子目录并将 CUPS-PDF_opt.ppd 复制到您的 CUPS 模型目录(通常为 /usr/share/cups/model [ /Generic ] )。如果您不想通过 PPD 设置任何选项(请参阅第 3 节),请改用 CUPS-PDF_noopt.ppd。

也不错。现在,我偷懒安装了软件包,它成功了。如果它不工作,那一定是因为 Ubuntu/Debian 补丁。应用这些补丁,然后重试。

相关内容