我使用这个链接安装了爆米花时间:
但我不知道如何使用或运行 Popcorn Time。我是否要打开我的 torrent 客户端并下载电影,然后它就开始运行?还是我必须打开它?如果我必须打开它,我该怎么做,我打开了 dash 并尝试点击它,但什么也没发生。请帮帮我!!:D
答案1
TL;DR:现在通过将 Popcorn Time 升级到 Beta 0.3.0 或更高版本,此问题已得到解决。从本质上讲,这不是已修复的错误,而是 Popcorn Time 的某些版本与 Ubuntu 的某些版本之间存在不兼容性。
我是否应该打开我的 torrent 客户端并下载电影然后它就可以运行了?
如果你知道如何使用 bittorrent 客户端,并且你有要下载的种子的 .torrent 元文件或磁力链接(用于下载电影或其他内容),你不需要爆米花时间。
Popcorn Time 自动执行此过程一些torrents(尽管可能不如您自己做的那么好,但您可以自己选择 torrents,甚至可能将 bittorrent 客户端配置为按照您喜欢的方式工作)。
学习如何使用 bittorrent 客户端是其实相当容易, 和搜索种子也不是那么难。(有些 torrent 程序,如qBittorrent, 甚至整合搜索功能。)因此,即使许多认为自己需要 Popcorn Time 的人实际上也不需要。我这样说绝不是为了侮辱这个软件,而是因为我希望鼓励人们熟悉 bittorrent,这是一个广泛实施技术有多种用途, 包括可靠的并且快速分配免费操作系统像 Ubuntu。
但如果你想使用 Popcorn Time,听起来你正在解决这个问题André Marinho 的回答:在 Popcorn Time 的二进制分发中,它的可执行文件链接到共享库libudev0
,但比 12.04 更新的 Ubuntu 版本使用libudev1
。但我相信这个问题在 Popcorn Time 的较新版本中已经得到修复;见下文。
假设不兼容性完全是表面的——即可执行文件链接到错误的(对于 Ubuntu)库,但不依赖于libudev0
和之间的任何差异libudev1
——解决方案是使用十六进制编辑器编辑可执行文件,以便它声明与的链接,libudev1
而不是应该管用。
这里还有另外几个解决方案。
确保您正在运行最新版本。
尽管Popcorn Time 原版的开发已经停止, 它是目前正在由其他人开发. 32 位和 64 位 Linux 版本现在提供并且可以在 Ubuntu 上开箱即用。
因此,请确保您运行的是最新版本,除非您特别需要较早的版本。这本身可能会解决这个问题。
(我做过在 64 位 Utopic 系统上尝试一下。64 位和 32 位版本的 Popcorn Time Beta 3.2 都可以运行;都没有这个问题。我只尝试启动该程序;我没有测试下载。)
只需创建指向所需库的符号链接即可。
我已经能够使用旧版本的 Popcorn Time(Beta 0.29)在新版本的 Ubuntu 上重现该问题。然后我测试了这个以及以下解决方案,它们都有效。
如果您是 Ubuntu 系统的管理员,那么您可以使用 以 root 身份运行命令sudo
。因此,您可以创建一个符号链接libudev1
并调用该链接libudev0
。然后,当 Popcorn Time 尝试使用 时libudev0
,它将自动无缝地使用libudev
。
sudo ln -s /lib/$(arch)-linux-gnu/libudev.so.1 /lib/$(arch)-linux-gnu/libudev.so.0
你可能已经注意到了脚本中非常类似的内容MrVaykadji 的回答到从源文件安装 Popcorn Time。这实际上是完全相反的——在那里,脚本链接到libudev.so.0
调用,libudev.so.1
因为旧版本的 Ubuntu(具体来说,12.04)有libudev.so.0
,而新版本的 Popcorn Time 需要libudev.so.1
。相比之下,我在这里给出的解决方案是Popcorn Time 的旧版本需要libudev.so.0
运行Ubuntu 的新版本具有libudev.so.1
。
如果您不是管理员,则可以使用符号链接解决方案。
如果您无法在所使用的 Ubuntu 系统上使用 sudo 以 root 身份运行命令(因为您不是管理员),或者您不想弄乱系统的这些部分,您可以在其他地方创建符号链接并以特殊方式运行 Popcorn Time,使其使用符号链接,即使它不在 libs 目录中。
假设你的主文件夹中有 Popcorn Time 程序文件夹,因此它是~/Popcorn-Time
。运行:
cd ~/Popcorn-Time
ln -s /lib/$(arch)-linux-gnu/libudev.so.1 libudev.so.0
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./Popcorn-Time
该ln -s
命令将一个名为 的符号链接libudev.so.0
(指向系统的libudev.so.1
)放入Popcorn-Time
文件夹中。第二条命令运行Popcorn-Time
时将当前目录添加到LD_LIBRARY_PATH
变量中。
由于LD_LIBRARY_PATH
不常用,并且可能不包含 Popcorn Time 运行所需的任何内容(实际上可能根本不包含任何内容),所以这个命令可能也会起作用:
LD_LIBRARY_PATH=. ./Popcorn-Time
你也应该尝试一下,因为如果它没有工作,这将使下一步变得更加复杂。
制作启动器
像那样从终端运行 Popcorn Time(输入LD_LIBRARY_PATH=...
)主要是为了测试以确保设置正确。总是必须这样做会很不方便。
所以你应该制作一个启动器运行 Popcorn Time。(根据您使用的桌面环境,您可以通过右键单击桌面并单击创建启动器...)
启动器应运行此命令:
env LD_LIBRARY_PATH=/home/username/Popcorn-Time /home/ek/Popcorn-Time/Popcorn-Time
(我用过env
因为VARIABLE=value command
应用程序启动器图标通常不支持语法。~
并且环境变量扩展通常也不受支持,这就是为什么你必须给它一个完整的明确名称来找到 Popcorn Time 和你的库符号链接。)
代替username
用您的实际用户名。(如果 Popcorn Time 程序文件夹不在您的主文件夹中,则必须进一步编辑这两个实例。)/home/username/Popcorn-Time
选择:制作 Shell 脚本启动器
如果较短的命令LD_LIBRARY_PATH=. ./Popcorn-Time
不起作用,您可能需要编写一个 shell 脚本来LD_LIBRARY_PATH
在启动 Popcorn Time 时分配正确的值并合并其先前的内容。
我建议在 Popcorn Time 程序文件夹中创建 shell 脚本,与Popcorn-Time
可执行文件和libudev.so.0
符号链接一起。
cd ~/Popcorn-Time # if you're not already there
gedit popcorn-time.sh # if you want you can use a different text editor than gedit
将其放入文本文件中(这是您的 shell 脚本):
#!/bin/sh
DIR=~/Popcorn-Time
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DIR $DIR/Popcorn-Time
如果 Popcorn Time 程序文件夹不是~/Popcorn-Time
,您可以方便地在脚本中的一个地方进行更改:在线上DIR=
。
完成后,保存文件,退出文本编辑器,并使 shell 脚本可执行:
chmod +x popcorn-time.sh
然后,当您制作启动器时,它应该运行的命令很简单:
/home/username/Popcorn-Time/popcorn-time.sh
替换为 Popcorn Time 程序文件夹的实际路径。因此,如果是,只需替换/home/username/Popcorn-Time
~/Popcorn-Time
username
使用您的实际用户名。
答案2
我在安装 Popcorn-Time 时也遇到了一些问题。最后,我成功地在 Ubuntu 14.04 LTS 上安装并正常运行了它。按照此视频中的指导进行。
简而言之:
- 安装十六进制编辑器,例如ghex。
- 打开文件
Popcorn-Time
(这是爆米花时间可执行文件) 在十六进制编辑器中。 - 搜索
libudev.
。(在 GHex 中,您可以通过“编辑”>“查找”执行此操作。) - 这应该会找到
libudev.so.0
。将其替换为libudev.so.1
(这是图书馆那较新版本的 Ubuntu有udev)。 - 在十六进制编辑器中保存文件。(您现在可以关闭十六进制编辑器。)
- 现在您应该可以运行 Popocorn Time 了。一种方法是右键单击
Popcorn-Time
Nautilus(文件浏览器),然后单击“运行”。