程序在 Ubuntu 17.04 和 17.10 中有效,但在 Ubuntu 18.04 中无效

程序在 Ubuntu 17.04 和 17.10 中有效,但在 Ubuntu 18.04 中无效

我已经使用一款名为电影缩略图 (mtn) 的程序很多年了。

在此阅读有关该计划的信息:http://moviethumbnail.sourceforge.net/

我已经下载了以下二进制文件:https://sourceforge.net/projects/moviethumbnail/files/movie%20thumbnailer%20linux%20binary/mtn-200808a-linux/

我已下载了 Ubuntu 17.04、17.10 和 Ubuntu 18.04 的 live iso 文件,并在 Virtual Box 中启动了它们。排除它只发生在我的 Ubuntu 18.04 安装中。

当使用 Ubuntu 17.04/17.10 中的终端运行该程序时,我得到了这个(有效): 在此处输入图片描述

当我在 Ubuntu 18.04 中使用终端运行该程序时,我得到了以下信息: 在此处输入图片描述

有谁能告诉我为什么这种情况会发生在 Ubuntu 18.04 中以及如何让程序在 Ubuntu 18.04 中运行。

该程序自 2008 年以来一直未更新,但直到 Ubuntu 18.04 一直运行良好。

答案1

这里有三个选项:

  • 获取新版本新的 BitBucket 存储库

    cd ~/Downloads
    wget https://bitbucket.org/wahibre/mtn/downloads/mtn_3.3_ubuntu18_amd64.deb
    sudo apt-get install ./mtn_3.3_ubuntu18_amd64.deb
    

    它正常启动:

    $ mtn
    mtn: no input files or directories specified
    
    Movie Thumbnailer (mtn) 3.3
    Compiled with: Lavc57.107.100 Lavf57.83.100 Lavu55.78.100 SwS4.8.100 GD:2.2.5
    ...
    
  • 尝试使用以下方式获取构建依赖项

    sudo apt-get install build-essential libavcodec-dev libavformat-dev libswscale-dev libgd-dev
    

    然后修补源代码以反映 API 的现代变化。

  • 创造施鲁特使用以前的(但受支持的)Ubuntu 16.04 LTS版本并在此处启动您的应用程序:

    首先获取软件:

    cd ~/Downloads
    wget https://datapacket.dl.sourceforge.net/project/moviethumbnail/movie%20thumbnailer%20linux%20binary/mtn-200808a-linux/mtn-200808a-linux.tgz
    tar -xf mtn-200808a-linux.tgz
    cd mtn-200808a-linux/
    

    然后设置 schroot:

    sudo apt-get install schroot debootstrap -y
    
    cat <<EOF | sudo tee /etc/schroot/chroot.d/xenial.conf
    [xenial]
    description=Ubuntu 16.04
    directory=/srv/chroot/xenial
    root-users=$USER
    type=directory
    users=$USER
    EOF
    
    sudo mkdir -p /srv/chroot/xenial
    sudo debootstrap xenial /srv/chroot/xenial
    
    cat <<EOF | sudo tee /srv/chroot/xenial/etc/apt/sources.list
    deb http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse
    deb http://security.ubuntu.com/ubuntu xenial-security main restricted universe multiverse
    EOF
    

    (它将以 250 Mb 的小/srv/chroot/xenial文件夹结束)。

    然后运行你的应用程序:

    user@bionic:~/Downloads/mtn-200808a-linux$ schroot -c xenial 
    (xenial)user@bionic:~/Downloads/mtn-200808a-linux$ ./mtn 
    mtn: no input files or directories specified
    
    movie thumbnailer (mtn) 200808a copyright (c) 2007-2008 tuit, et al.
    ...
    

答案2

最简单的解决方法可以在运行 mtn 之前导出语言环境。例如,在终端实例中使用英语来运行 mtn go

export LANG=/usr/lib/locale/en_US.UTF-8

然后在同一终端中运行 mtn 命令。

编辑:实际上我思考可能只是位置问题?因为这个也可以。

export LANG=/usr/lib/locale/

相关内容