AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1208157
Accepted
Faust
Faust
Asked: 2020-02-05 19:37:23 +0800 CST2020-02-05 19:37:23 +0800 CST 2020-02-05 19:37:23 +0800 CST

如何在 Ubuntu 18.04 上获取 MuPDF OpenGL 查看器?

  • 772

TLDR

如何mupdf-gl在 Ubuntu 18.04 上安装(最好不要从源代码构建)?


我最近开始使用 MuPDF。我尝试将它安装在带有 Ubuntu 18.04.3 的台式机上。但是,我只能得到它的 X11 版本。我更喜欢用 OpenGL 渲染的那个;那是我一直在笔记本电脑上使用的那个。我更喜欢它,但此时我只想知道我做错了什么,并学会做对:)

我做了什么

我首先使用sudo apt install mupdf. 直截了当。但这不是我所期望的:我立即注意到键绑定不同。

我检查了版本。它是 MuPDF 1.12。最新版本是 1.16。想可能是这样,我去寻找如何安装更新的版本。

我发现这篇关于安装 1.13 版的 UbuntuHandbook 帖子。我清除了我的安装,添加了他们的 PPA,更新并重新安装,这让我得到了 1.14 版。但是,仍然没有运气。当我运行mupdf时,它的行为仍然相同。

在研究我的问题时,我看到了一些对mupdf-gl命令mupdf-x11的引用。所以我在我的文件中挖掘。我发现/usr/bin/mupdf运行/usr/lib/mupdf/mupdf-x11. 但是没有mupdf-gl找到。

在这一点上,我意识到我的问题与版本无关。查看 MuPDF 的发布历史,我看到 OpenGL 查看器是在 1.8 版上推出的。

我还没有尝试从源代码构建库。从我所见,其他人似乎没有通过存储库安装相同的问题。我什至发现有人无意中使用了 OpenGL 查看器并抱怨旧的键绑定不起作用的这个Gentoo 论坛帖子。

如果相关,glxinfo | grep "OpenGL version"在我的终端中运行会产生OpenGL version string: 3.3 (Compatibility Profile) Mesa 19.2.8.

这是我在任何 Stack Exchange 上的第一篇文章,因此对我的格式的任何反馈将不胜感激。

opengl 18.04 mupdf
  • 2 2 个回答
  • 1381 Views

2 个回答

  • Voted
  1. Best Answer
    N0rbert
    2020-02-06T13:51:20+08:002020-02-06T13:51:20+08:00

    TL;博士

    这是一个 Ubuntu 打包错误,它已经报告给启动板作为错误 1740105。

    从源代码编译或安装

    你需要什么

    ArchLinux 对 PKGBUILD 文件的分析表明 muPDF 需要OpenGLfreeglut和库。glumesa-libgl

    在 Ubuntu 上,构建依赖项的模拟(通过运行apt-get build-dep标志-s)安装了许多 OpenGL 相关的包(包括前面提到的):

    $ sudo apt-get build-dep mupdf -s | grep Inst.*gl
    Inst freeglut3 (2.8.1-3 Ubuntu:18.04/bionic [amd64])
    Inst libglvnd-core-dev (1.0.0-2ubuntu2.3 Ubuntu:18.04/bionic-updates [amd64])
    Inst libgles1 (1.0.0-2ubuntu2.3 Ubuntu:18.04/bionic-updates [amd64])
    Inst libopengl0 (1.0.0-2ubuntu2.3 Ubuntu:18.04/bionic-updates [amd64])
    Inst libglvnd-dev (1.0.0-2ubuntu2.3 Ubuntu:18.04/bionic-updates [amd64])
    Inst libxcb-glx0-dev (1.13-2~ubuntu18.04 Ubuntu:18.04/bionic-updates [amd64])
    Inst libgl1-mesa-dev (19.2.8-0ubuntu0~18.04.1 Ubuntu:18.04/bionic-updates [amd64])
    Inst libglu1-mesa-dev (9.0.0-2.1build1 Ubuntu:18.04/bionic [amd64])
    Inst freeglut3-dev (2.8.1-3 Ubuntu:18.04/bionic [amd64])
    

    虽然 muPDF 的默认安装提供了以下库依赖项:

    $ ls /usr/lib/mupdf/mupdf* -1
    /usr/lib/mupdf/mupdf-x11
    
    $ ldd /usr/lib/mupdf/mupdf-x11 | grep -i gl
        libglib-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f55297f6000)
    

    所以我们没有前面列表中显示的 OpenGL 库。

    在 18.04 LTS 上做什么

    要获得 OpenGL 支持,我们确实需要

    • (a) 使用构建依赖项重新编译包。所以运行:

      sudo apt-get build-dep mupdf mupdf-tools
      
      cd ~/Downloads
      apt-get source mupdf
      
      cd mupdf-1.12.0+ds1
      make
      sudo make install
      

      你将被mupdf-gl编译并安装到/usr/local/bin/mupdf-gl.

    • (b) 使用PPA 中的预构建包,因此您可以从那里安装 mupdf:

      sudo add-apt-repository ppa:cges30901/app
      sudo apt-get update
      sudo apt-get install mupdf
      

      并将mupdf-gl变为可用。

    在 Ubuntu 20.04 LTS 上做什么

    这里存在PPA,因此您可以从那里安装 mupdf:

    sudo add-apt-repository ppa:cges30901/app
    sudo apt-get update
    sudo apt-get install mupdf
    

    并将mupdf-gl变为可用。

    22.04 LTS 发布时该怎么办

    没什么,只需从存储库安装官方软件包,它就会提供mupdf-gl.

    • 5
  2. cayhorstmann
    2020-09-27T08:15:10+08:002020-09-27T08:15:10+08:00

    这在 20.04 中仍然是一个问题。要构建最新版本,请访问https://www.mupdf.com/downloads/index.html以查找最新源。现在是 1.18.0。然后

    wget https://www.mupdf.com/downloads/archive/mupdf-1.18.0-source.tar.xz
    tar xf mupdf-1.18.0-source.tar.xz
    cd mupdf-1.18.0-source
    sudo apt install mesa-common-dev libgl1-mesa-dev libglu1-mesa-dev \
      xorg-dev libxcursor-dev libxrandr-dev libxinerama-dev freeglut3-dev
    make
    sudo make prefix=/usr/local install
    
    • 5

相关问题

  • 如何在 GMA 3150 上启用 OpenGL 2.0 和 WebGL?

  • 如何使 Google SketchUp 在 Wine 中与 Intel 图形一起使用?

  • 如何设置 OpenGL 编程环境?

  • 玩OpenGL游戏后分辨率卡住了

  • Python 或 C# 游戏开发的完整免费指南 [关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve