从源 tarball 升级 Ubuntu 软件包。示例:gnome-terminal 和 VTE

从源 tarball 升级 Ubuntu 软件包。示例:gnome-terminal 和 VTE

我正在使用 Ubuntu 17.04,我正在尝试编译gnome 终端来自来源,但./autogen.sh抱怨vte

configure: error: Package requirements (vte-2.91 >= 0.49.2
   glib-2.0 >= 2.42.0
   gio-2.0 >= 2.34.0
   gtk+-3.0 >= 3.12.0
   gsettings-desktop-schemas >= 0.1.0
   dconf >= 0.14.0
   uuid
   libpcre2-8 >= 10.00
    x11) were not met:

Requested 'vte-2.91 >= 0.49.2' but version of vte is 0.44.2

如果我检查安装中的软件包是否匹配vte

$ apt list --installed | grep vte
ir1.2-vte-2.91/zesty,now 0.44.2-1ubuntu3 amd64 [installed,automatic]
libvte-2.91-0/zesty,now 0.44.2-1ubuntu3 amd64 [installed,automatic]
libvte-2.91-common/zesty,zesty,now 0.44.2-1ubuntu3 all [installed,automatic]
libvte-2.91-dev/zesty,now 0.44.2-1ubuntu3 amd64 [installed]
libvte-2.91-doc/zesty,zesty,now 0.44.2-1ubuntu3 all [installed,automatic]
libvte-common/zesty,zesty,now 1:0.28.2-5ubuntu3 all [installed,automatic]
libvte-dev/zesty,now 1:0.28.2-5ubuntu3 amd64 [installed]
libvte-doc/zesty,zesty,now 1:0.28.2-5ubuntu3 all [installed,automatic]
libvte9/zesty,now 1:0.28.2-5ubuntu3 amd64 [installed,automatic]

通过查询包状态可以看到我已经安装了 0.44.2 版本libvte-2.91-dev

$ dpkg -s libvte-2.91-dev | grep Version
Version: 0.44.2-1ubuntu3

现在,我已经下载了最新版本的vte0.49.2 来自 GitHub

我该如何继续用下载的版本替换已0.44.2安装的版本0.49.2以便进行编译gnome-terminal?我可以直接运行(从 VTE 源目录):

./autogen.sh
./configure
make
sudo make install

它会神奇地起作用吗,还是我需要先卸载现有版本(及其依赖项)?

编辑

我选择安装libvte到自定义文件夹(使用--prefix选项):

$ ./autogen.sh --prefix=/opt/vte --disable-introspection --disable-vala
$ make
$ sudo make install

但现在的问题是,autogen.shgnome-terminal源目录中仍然找不到新安装的 VTE。我尝试运行:

$ PKG_CONFIG_PATH=/opt/vte ./autogen.sh
[...]
Requested 'vte-2.91 >= 0.49.2' but version of vte is 0.44.2

我在这里遗漏了什么?

答案1

我最终成功在 Ubuntu 17.04 上从源代码进行编译gnome-terminal。作为参考,以下是对我有用的方法:

  • 安装 Ubuntu 软件包

    sudo apt get install \
    intltool libpcre2-dev libdconf-dev uuid-dev libglib2.0-dev \
    libgtk-3-dev libgirepository1.0-dev libvala-0.34-dev valac yelp-tools \
    libnautilus-extension-dev gtk-doc-tools libpcre2-dev libgirepository1.0-dev \
    gnome-common gobject-introspection gsettings-desktop-schemas-dev
    
  • 安装最新版本的 VTE(最新版本不作为 Ubuntu 软件包提供):

    下载来自 GitHub 的 VTE,然后在源文件夹中:

    ./autogen.sh --prefix=/opt/vte
    make
    sudo make install
    
  • 安装gnome-terminal

    第一的下载 gnome-terminal来自 GitHub,然后在源文件夹中:

    PKG_CONFIG_PATH=/opt/vte/lib/pkgconfig ./autogen.sh \
    --disable-search-provider --prefix=/opt/gnome-terminal
    

    这将安装gnome-terminal/opt/gnome-terminal/bin/gnome-terminal

相关内容