stardict-repair 选项在哪里?

stardict-repair 选项在哪里?

我有一本 StarDict 格式的词典,没有 *.ifo 文件。

我知道文件应该是什么样的,但我不知道这本字典里到底有多少个单词,也不知道如何在不手动计数的情况下检查它。

我花了几个小时寻找答案,但一无所获。

我已经从软件中心安装了 stardict-tools,但显然它没有配备这里提到的“stardict-repair”选项:http://code.google.com/p/stardict-3/wiki/RepairStarDictDicts,位于星际译王 (StarDict) 项目页面上。

所以我的问题有两个:1. 如何在 Ubuntu 12.10 上获取 stardict-repair 并使其运行;2. (可能有点离题)如果没有,如何方便地创建一个正确的 ifo 文件。

答案1

这些工具安装到/usr/lib/stardict-tools/stardict-index并且stardict-verify都在那里。 由于它们位于当前 PATH 设置之外,因此终端无法找到它们并运行。

要从终端运行它们,您有几种选择:

  1. 打开终端并使用包含路径的完全限定名称:

    /usr/lib/stardict-tools/stardict-verify

  2. 浏览到 stardict-tools 目录并使用前缀./

    cd /usr/lib/stardict-tools,然后使用./startdict-verify

  3. 如果您发现经常使用这些工具,则可以将目录添加到 PATH 或添加别名、.desktop 文件,或者制作自己的包装脚本等。但这些事情现在可能不值得麻烦。

stardict-repair但是,目录中没有包含。Ubuntu 软件包不是当前版本,所以这可能是原因,也可能是其他原因。

要制作自己的词典,请参阅StarDict 创建词典

有关 .ifo 格式的详细信息,请参阅星际译王格式

如果您必须有修复工具,则需要从源代码编译并安装该包。

如何编译软件包

下载源代码

在 中打开终端~/Downloads。下载将转到您运行下载命令时所在的目录。

运行hg clone https://code.google.com/p/stardict-3/下载源代码。

预编译步骤

其中 2 个文件中有错误需要修复。由于对其中一个所需库进行了更改,因此每个文件都有一行需要更改才能进行编译。

这2个文件是libcommon.hlibcommon.cpp,但您可以下载更新的文件。

下载地址:http://code.google.com/p/stardict-3/issues/detail?id=31。向下滚动直到看到附有替换文件的帖子。

将每个文件下载到~/Downloads/stardict-3/lib/src,当询问是否要替换现有文件时,回答“是”。

标准的 Ubuntu 安装不会自动安装编译工具,而且每个应用程序都有自己所需的库。

对于 stardict 工具,你需要:

sudo apt-get install build-essential automake libtool libmysqlclient-dev libpcre3-dev

编译

cd ~/Downloads/stardict-3/

大多数软件包都有一个现成的configure文件,您可以在此时运行它。使用此软件包,您需要运行一个实用程序来创建该configure文件。

确保您在stardict-3目录中(结构中有多个自动生成文件,您需要运行正确的文件),然后:

./autogen.sh

现在运行配置文件,并选择--disable-dict仅编译工具。

./configure --disable-dict

使用以下命令编译该包(注意,这次make没有)./

make通常后面跟着make install,但我认为我们不想在这里这样做,因为它会从 Ubuntu 存储库复制已安装的文件。相反,cd tools/src您将在其中找到刚刚编译的二进制文件。

在终端中,二进制文件将是绿色文件,没有扩展名。(以 结尾的同名文件.o是不再需要的中间文件,以 结尾的文件.cpp是原始源代码,也可以忽略。

stardict-repair将和 之前可能未包含的任何其他文件复制到/usr/lib/stardict-tools。您只需复制二进制文件。请记住,./运行时会显示 。

注意:我们编译了最新版本。虽然我认为可能性不大,但这个版本的 stardict-repair 和您拥有的其他软件包之间可能存在一些不兼容问题。如果是这样,应该可以编译该工具的先前版本。

相关内容