我已经使用一款名为电影缩略图 (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/