在 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
軟體包進行操作,因為這與其他內容相衝突。
現在我成功了:)