在 13 和 13.1 版本之间的某个版本我不再能够从源代码编译 XBMC。当 v13 首次发布时(来自 Gotham 分支),我能够编译它。然后,13.1 发布了,我决定不再尝试 beta/RC;所以我没有尝试编译这些。当最终的 13.1 版本发布时,我尝试编译该版本,使用的过程与我每次成功使用的过程相同。但这一次,没有成功……
我在“./configure”步骤中失败,并显示“找不到所需的库”。该命令以如下内容结束:
(...)
checking for TAGLIB... yes
checking for CDIO... yes
checking for LIBBLURAY... yes
checking for libbluray soname... libbluray.so.1
checking for bd_register_argb_overlay_proc in -lbluray... no
checking for library containing iconv_open... no
checking for library containing libiconv_open... no
configure: error: Could not find a required library. Please see the README for your platform.
这是完整的config.log
文件:http://pastebin.com/nGynLkX6
我不确定这就是问题所在,但我手动下载、编译并libiconv
安装http://www.gnu.org/software/libiconv/,但似乎没有帮助。
如果相关,我总是执行以下命令(按特定顺序)来编译新的 XBMC 版本:
git clean -xfd
git reset --hard
git pull --rebase
make -C lib/taglib
sudo make -C lib/taglib install
./bootstrap
./configure --disable-debug --disable-pulse --disable-vaapi --enable-goom
make
sudo make install
我在这里缺少什么?
更新!
我已经升级了 zlib1g,现在我能够完成配置步骤。然而,使用 make 编译,最终给我带来了对 libiconv、libiconv_open 和 libiconv_close 的“未定义引用”的错误。有想法吗?
答案1
我会看一下 的输出./configure --help
。可能还有其他选项可以禁用 make 显示您缺少的库的要求。
checking for bd_register_argb_overlay_proc in -lbluray... no
checking for library containing iconv_open... no
checking for library containing libiconv_open... no
configure: error: Could not find a required library. Please see the README for your platform.
我首先禁用其中任何一个,然后看看您是否能够编译。
答案2
我必须更新zlib1g
,现在它可以工作了:)
作为记录,以下是我在上面的评论中所说的话以及为什么我没有更新所有内容:
我一定是缺少一些软件包更新。问题是,我使用的是 Debian Squeeze,并且其工作的大部分依赖项必须来自 Wheezy。我只需要找出需要从 Wheezy 更新哪一个才能使其再次工作。 (我无法升级到 Wheezy,因为我使用的 OpenMediaVault 尚不支持 Wheezy)。
另一个问题是我必须make uninstall
对手动下载的iconv
软件包进行操作,因为这与其他内容相冲突。
现在我成功了:)