Gentoo 上受保护的 Flash 视频(需要 HAL)

Gentoo 上受保护的 Flash 视频(需要 HAL)

我无法播放“受保护”的 Flash 视频,例如 Amazon Prime Instant Video。从我读到和发现的内容来看,这似乎是由于我的电脑上没有安装 HAL。在开头部分可以看到,确认它是受保护视频所必需的http://helpx.adobe.com/x-productkb/multi/flash-player-11-problems-playing.html

但是,hal 不在 gentoo portage 树中,而且无论如何已被弃用并被 udev 取代。我该如何让 Amazon Prime Instant Video 重新工作?我考虑从http://www.freedesktop.org/wiki/Software/hal但是那里的链接无法加载,并且尝试从旧的 ebuild 或声称仍然支持它的覆盖(例如 kde-sunset)安装它会导致编译错误:

In file included from addon-generic-backlight.c:38:0:
/usr/include/glib-2.0/glib/gmain.h:21:2: error: #error "Only <glib.h> can be included directly."

还有其他人解决过这个问题吗?

答案1

半闪现

这就是你现在在 portage 中要做的所有事情了。WFM

答案2

对于任何和我一样需要安装此软件的人来说,grawity 对他的回答的评论是安装此软件的关键。以下是明确的分步说明:

步骤 1:获取代码

# git clone http://cgit.freedesktop.org/hal-info/
# git clone http://cgit.freedesktop.org/hal/

第 2 步:安装 hal-info

# cd hal-info
# ./autogen.sh
# make && make install
# cd ..

步骤 3:修复 hal 代码

为此,请将所有 替换为#include <glib/gmain.h>#include <glib.h>你可以使用以下命令执行此操作:

# find hal -name "*.c" -print|xargs sed -i 's/#include <glib\/gmain\.h>/#include <glib\.h>/g'

由于某种原因,错过了一个引用(我并不是真正的正则表达式/ sed 专家)所以我只是做了一个grep -r "#include <glib/gmain.h>" *并手动修复了它。

步骤 4:安装 hal

# cd hal
# ./autogen.sh --disable-policy-kit
# make && make install

步骤5:不要忘记dbus配置!

# cp hal.conf /etc/dbus-1/system.d/

就是这样!现在只需使用hald(/usr/local/sbin/hald)运行它即可

答案3

HAL工作原理在上面udev;它从未被完全“取代”;那些功能可以在 hal 中禁用(例如 ACL 管理)。只要 Flash Player 是 HAL 的唯一用户,就不会有任何冲突。

相关内容