如何在 Ubuntu 15.10 及更新版本中安装 gnotime?

如何在 Ubuntu 15.10 及更新版本中安装 gnotime?

时间跟踪器应用程序gnotime在 Ubuntu 15.04 中可用(在 Launchpad 上)。但是,Ubuntu 15.10 至 17.10 版本不包含任何版本,仅源包

我还该如何安装 gnotime?

答案1

对于 Ubuntu 17.10:自行编译

在这里安装 Ubuntu 15.04 软件包不起作用,所以我们必须自己编译程序。这是可能的,但由于我们在最近的发行版上处理相当旧的软件,因此变得有点困难。以下是我成功的方法:

1. 安装所需的构建工具

  1. sudo apt install checkinstall
  2. 安装dbus-binding-tool,稍后编译时需要gnotime

    sudo apt install libdbus-glib-1-dev

2.编译安装qof

Ubuntu 17.10 提供了libqof2,但我们需要早期版本。因此,我们从用于 Ubuntu 15.04 包的未更改的 0.8.7 源包进行编译:

  1. sudo apt-install sqlite libsqlite0-dev
  2. mkdir qof && cd qof
  3. wget https://launchpad.net/ubuntu/+archive/primary/+files/qof_0.8.7.orig.tar.gz
  4. tar -xzf qof_0.8.7.orig.tar.gz && cd qof-0.8.7
  5. ./configure
  6. make
  7. sudo checkinstall make install

3.编译安装gtkhtml 3.xx

Ubtuntu 17.10 提供了 gtkhtml 版本 4,但我们需要版本 3。我们从源代码编译版本 3.32.2,使用软件包和补丁Debian 维护者提供了这些补丁。如果没有这些补丁,编译将无法进行。

  1. sudo apt install libenchant-dev
  2. mkdir gtkhtml && cd gtkhtml
  3. wget http://http.debian.net/debian/pool/main/g/gtkhtml3.14/gtkhtml3.14_3.32.2.orig.tar.gz
  4. tar -xzf gtkhtml3.14_3.32.2.orig.tar.gz && cd gtkhtml-3.32.2
  5. 应用 Debian 维护者提供的补丁(我遵循这些说明):

    1. wget http://http.debian.net/debian/pool/main/g/gtkhtml3.14/gtkhtml3.14_3.32.2-2.2.debian.tar.gz
    2. tar -xzf gtkhtml3.14_3.32.2-2.2.debian.tar.gz(重要的是,这会在我们上面创建的debian正常源目录中创建子目录)gtkhtml
    3. apt-get install quilt
    4. export QUILT_PATCHES=debian/patches
    5. quilt push -a
  6. G_CONST_RETURN将源文件中出现的所有 替换为const。此操作将反向移植修复为了一个错误在更高版本中提供,否则将禁止编译。

  7. ./configure
  8. src/Makefile目标的第 580 行中gnotime,将“-lm”附加到该行。根据这些说明。更清洁的解决方案当然是将其作为一个选项包含在内./configure
  9. make
  10. sudo checkinstall make install

4.编译安装gnotime

  1. 我们使用(迄今为止)最新的提交版本2e3181c,因此我们首先将其作为快照:

    wget https://sourceforge.net/code-snapshots/git/g/gt/gttr/code.git/gttr-code-2e3181c7b16cc95b2ca50a94bf8d23453fb561a5.zip

  2. 安装我们不需要自己编译的其余构建依赖项:

    sudo apt install gnome-common libglib2.0-dev guile-2.0-dev gtk+-2.0 libgtk2.0-dev libgnome2-dev libgnomeui-dev libglade2-dev libxss-dev

  3. ./autogen.sh

  4. make
  5. sudo checkinstall make install
  6. 现在开始gnotimeexport LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib; gnotime或者使用以下命令使此库路径更改永久生效这些说明

对于 Ubuntu 15.10:安装 15.04 软件包

虽然这不是最干净的解决方案,但您仍然可以手动成功安装 Ubuntu 15.04 软件包及其依赖项。AMD64 架构的示例命令:

wget http://launchpadlibrarian.net/188278296/qof-data_0.8.8-1_all.deb;
wget http://launchpadlibrarian.net/188278297/libqof2_0.8.8-1_amd64.deb;
wget https://launchpadlibrarian.net/160508015/libgtkhtml3.14-19_3.32.2-0ubuntu4_amd64.deb;
wget http://launchpadlibrarian.net/188196809/gnotime_2.4.1-1_amd64.deb;

sudo dpkg -i qof-data_0.8.8-1_all.deb;
sudo dpkg -i libqof2_0.8.8-1_amd64.deb;
sudo dpkg -i libgtkhtml3.14-19_3.32.2-0ubuntu4_amd64.deb;
sudo dpkg -i gnotime_2.4.1-1_amd64.deb;

使用这种方法,将不会有自动更新,但目前,gnotime 无论如何都无法进行更新。

(更好的方法是使用版本固定或从源码包

相关内容