如何在Windows上构建qpdf?

时间:2017-01-10 14:00:13

标签: r mingw qpdf

在运行我的R-package检查时(通过devtools::check()),我面临警告''qpdf' is needed for checks on size reduction of PDFs。我发现this question是否建议(如果我理解答案正确)运行Sys.which(Sys.getenv("R_QPDF", "qpdf"))并查看是否找到了qpdf。在我的情况下,这只是返回

qpdf ""

所以,我认为我没有正确安装qpdf。不幸的是it seems to be quite complicated to install qpdf on Windows.我的第一个问题是:为Windows安装qpdf真的是如此痛苦和复杂吗?还是有一个简单的解决方案?

我按照说明操作,直到它说C:\ MinGW-w64 \ bin和C:\ MinGW-w64 \ lib \ mingw添加到PATH变量。但是,我没有找到安装 qpdf的进一步具体说明,只是关于如何使用不同的其他程序构建 qpdf。第二个问题是:我的假设是正确的,在我构建 qpdf后,已安装?但真正的问题是:构建qpdf的最佳方法是什么?我尝试了{"使用MinGW构建"部分中的./config-mingw32./config-mingw64命令。在我的C:\ MinGW \ msys \ 1.0 \ bin \ bash.exe中,但收到错误消息./config-mingw32: No such file or directory,并且不知道如何解决此问题。

我使用的是Windows 10,R版本3.3.2补丁(2017-01-07 r71934) - "真诚的南瓜补丁"和RStudio 1.0.136。

3 个答案:

答案 0 :(得分:8)

您基本上不需要在Windows上构建文件。请按照以下三个步骤操作:

  1. https://sourceforge.net/projects/qpdf/?source=typ_redirect
  2. 下载适用于Windows的qpdf
  3. 提取临时文件夹中的文件
  4. bin 文件夹的内容复制到%SystemRoot%\ System32
  5. 完成工作!

    Sys.which(Sys.getenv("R_QPDF", "qpdf"))
                                 qpdf 
    "C:\\WINDOWS\\SYSTEM32\\qpdf.exe" 
    

答案 1 :(得分:2)

充实answer provided elsewhere

如果您运行的是32位版本的R,则必须download 32位版本的qpdf,它是从SourceForge主页链接的版本。如果您正在运行64位的R安装,则需要进行一些挖掘以找到64位版本的qpdf,这个版本更深入(版本7.0列出here)。

可能更安全的选择是将压缩的qpdf目录解压缩到C:/Windows/System32,而不是将文件复制到C:\Program Files。如果您这样做,则需要在环境变量下将C:\Program Files\qpdf-version_number\bin添加到系统PATH,然后重新启动R以便它获取修改后的PATH

可能需要采取进一步措施来说服Windows,pqdf可以安全运行。 导航到C:\Program Files\qpdf-version_numer\bin并执行qpdf.exe(双击)。 Windows 10会发出安全警告,因为它是一个无法识别的可执行文件。您需要使用更多选项链接来查找运行该程序的按钮。完成后,Windows会将该文件识别为可以安全运行,并允许其他软件(包括R)使用它。

答案 2 :(得分:0)

设置MSVC环境, 然后配置和构建如下:

./config-msvc
make

以下是更详细的步骤:https://github.com/qpdf/qpdf/blob/master/README-windows.md

希望它有所帮助。