首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法完成pdftools安装Ubuntu18.04的R支持阅读文本

无法完成pdftools安装Ubuntu18.04的R支持阅读文本
EN

Ask Ubuntu用户
提问于 2021-05-12 13:43:15
回答 1查看 820关注 0票数 1

我读了如何安装波卜勒的帖子,对自己的困难满怀希望,但没有掷骰子。

我在Ubuntu18.04精密笔记本电脑上运行Anaconda下的R。我想安装readtext (R包)来支持一些语料库语言学研究,并试图从R终端窗口实现。我已经在没有问题的情况下安装了quanteda,所以当阅读文本被pdftools要求绊倒时,我感到很惊讶。

代码语言:javascript
复制
cannot find -lpoppler-cpp

我已经安装和卸载libpoppler dev几次使用

代码语言:javascript
复制
sudo apt-get install -y libpoppler-cpp-dev

安装好了

代码语言:javascript
复制
libpoppler-cpp-dev is already the newest version (0.74.0-bionic0)

当我尝试从R安装readtext (再次运行在Anaconda下,这可能是问题)时,它会到达pdftools安装并找到本地pkg-config信息。

  • 安装源代码包‘pdftools’.*包‘pdftools’成功地解压缩,MD5和检查**使用分段安装找到pkg-配置标记和lib!使用PKG_CFLAGS= -I/usr/include/poppler /cpp -i/usr/include/poppler使用PKG_LIBS=-lpoppler

但却找不到:

/home/dalton/anaconda3/bin/../lib/gcc/x86_64-conda_cos6-linux-gnu/7.3.0/../../../../x86_64-conda_cos6-linux-gnu/bin/ld:无法找到-lpoppler: collect2: collect2: ld返回一个退出状态:* /home/dalton/anaconda3/lib/R/share/make/shlib.mk:6: pdftools.so错误1错误:程序包“pdftools”编译失败

  • 去除‘/home/dalton/anaconda3/lib/R/library/pdftools’

当我亲自检查pkg-config时:

代码语言:javascript
复制
pkg-config --cflags --libs poppler-cpp

-I/usr/include/poppler/cpp -I/usr/include/

我确实找到了R中的安装程序所找到的相同信息。当我用系统grep追赶poppler时:

代码语言:javascript
复制
ls --recursive | grep -E "poppler"

我没有找到poppler,虽然我找到libpoppler和其他libpoppler文件/文件夹。但是,如果我询问pkg-config:

代码语言:javascript
复制
pkg-config --cflags --libs libpoppler-cpp-dev

它告诉我

在pkg-config搜索路径中找不到包libpoppler。也许您应该将包含‘libpoppler-cp-dev.pc’的目录添加到PKG_CONFIG_PATH环境变量中。没有找到‘脂器-cpp’的包裹。

我在上面引用的SE帖子中使用了@jeroen推荐的Poppler0.74.0支持Ubuntu18.04(仿生)的PPA,但是在Ubuntu本身和Anaconda R之间似乎有些混淆,因为R安装是在寻找Poppler,但是libpoppler似乎是合适的目标。因为我在Anaconda下运行R,我的系统似乎不知道R:

代码语言:javascript
复制
apt-cache policy r-base-core

返回

R基核心:已安装:(无)候选: 3.4.4-1ubuntu1版本表:3.4.4-1ubuntu1500 http://us.archive.ubuntu.com/ubuntu仿生/宇宙amd64软件包

我意识到这有点混乱,但我希望有人能认识到一个明显的问题,并告诉我要黑什么,例如修改poppler-cpp.pc来指向新的库或类似的东西。

EN

回答 1

Ask Ubuntu用户

发布于 2021-05-13 16:08:59

解决方案是留在Anaconda/conda环境中,因为R正在运行,而这是Ubuntu海周围的一个小岛(如果这个比喻没有让您晕船的话)。就这么做

代码语言:javascript
复制
conda install -c conda-forge poppler

这需要很长时间才能完成,因为最初两次“解决环境”的计划失败了,但是conda最终尝试了另一个重新数据源并成功了:

代码语言:javascript
复制
package                    |            build
---------------------------|-----------------
certifi-2019.9.11          |           py37_0         147 KB  conda-forge
conda-4.10.1               |   py37h89c1867_0         3.1 MB  conda-forge
openjpeg-2.3.1             |       h21c5421_1         469 KB  conda-forge
poppler-0.65.0             |       h581218d_1         1.3 MB
poppler-data-0.4.10        |                0         3.8 MB  conda-forge
python_abi-3.7             |          1_cp37m           4 KB  conda-forge
------------------------------------------------------------
                                       Total:         8.7 MB

等等,以祝福结束

执行事务:已完成

然后我打开了一个终端窗口并启动了R:

dalton@dalton-精度-3541:R

R版本3.6.1 (2019-07-05) -“脚趾的行动”版权(C) 2019统计计算平台R基金会: x86_64-conda_cos6-linux-gnu (64位)

并安装了pdftools:

代码语言:javascript
复制
> install.packages("pdftools")

  • 安装源代码包‘pdftools’.*包‘pdftools’成功地解压缩,MD5和检查**使用分段安装找到pkg-配置标记和lib!使用PKG_CFLAGS= -I/usr/include/poppler /cpp -i/usr/include/poppler使用PKG_LIBS=-lpoppler

对那些感兴趣的人来说,Anaconda库文件位于以下领域

-lpoppler cpp-L/home/dalton/anaconda3 3/lib/R/lib -lR

换句话说,在poppler的conda安装之后,我的pdftools的R安装可以找到poppler。完成pdftools:

**测试是否已安装包保存了临时安装路径的记录

  • 已完成(pdftools)

然后,我完成了安装readtext的最初任务,这需要poppler和pdftools:

代码语言:javascript
复制
install.packages("readtext")

**测试是否已安装包保存了临时安装路径的记录

  • 已完成(阅读文本)

下载的源代码包在‘/tmp/Rtmpxksozx/ downloaded _ packages’中更新“.Library”中生成'packages.html‘的包的HTML索引。完成

图书馆(读本)

一切与世界都是好的,在Ubuntu内部有着错综复杂的Anaconda/conda世界。这是一个伟大的环境,科学和学术计算,一旦你知道如何沟通。

票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1337789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档