Vine Linux バグトラッキングシステム - Vine Linux
課題の詳細を表示
0002557Vine Linux1 バグ公開2013-03-04 00:222013-03-04 23:36
shirow_higa 
shaolin 
毎回 
完了実装済 
VineSeed 
VineSeedVineSeed 
x86
self-build-xbmc-12.0-1vl7, samba-4.0.3-1vl7, libsmbclient-devel-4.0.3-1vl7
0002557: [Seed] samba-4.0.3-1vl7に更新後、self-build-xbmc-12.0-1vl7をインストールするとビルドエラーで止まる。
先日Seedにてリリースされたsamba-4.0.3に更新後、self-build-xbmc-12.0をインストールしました。
ところが、ビルド途中(進捗率16%程度)でエラーが出て終了してしまいました。

ログを確認した所、以下の部分で失敗しているようです。

$ sudo tail -n 20 /var/tmp/self-build-xbmc.log

CPP xbmc/filesystem/SmbFile.o
SmbFile.cpp:30:26: fatal error: libsmbclient.h: No such file or directory
compilation terminated.
make[1]: *** [SmbFile.o] Error 1
make: *** [xbmc/filesystem/filesystem.a] Error 2
make: *** Waiting for unfinished jobs....
'---以下略---

libsmbclient.hが見つからないため、エラーになるようです。

samba-4.0.3環境では、以下の場所にあるようです。

$ rpm -ql libsmbclient-devel |grep libsmbclient.h
/usr/include/samba-4.0/libsmbclient.h

samba-4.0のフォルダ以下にあるので、見つけられないかも知れません。
試しに、/usr/include直下にコピーし再インストールしてみます。

$ sudo cp -a /usr/include/samba-4.0/libsmbclient.h /usr/include/libsmbclient.h

$ sudo ap-get update
$ sudo apt-get reinstall self-build-xbmc

すると今度は、無事にビルドも完了しインストールも正常に終了しました。

xbmcのソースは見てないので断定出来ませんが、SmbFile.cpp内では/usr/include直下しか見ていないと思われます。

そのためSmbFile.cpp内にsamba3なら「/usr/include」を、samba4なら「/usr/include/samba-4.0」を参照するように出来ないでしょうか?

※または、samba-4.0.3側を修正してlibsmbclient.hを/usr/include直下に配置してもらうとか?

お忙しいところ申し訳ございませんが、よろしくお願い致します。
設定されていません。
log self-build-xbmc.log (80,824) 2013-03-04 00:22
http://mantis.vinelinux.org/file_download.php?file_id=333&type=bug
patch xbmc-libsmbclient-pkgconfig.patch (680) 2013-03-04 01:53
http://mantis.vinelinux.org/file_download.php?file_id=334&type=bug
課題の履歴
2013-03-04 00:22shirow_higa新規課題
2013-03-04 00:22shirow_higa添付ファイル追加: self-build-xbmc.log
2013-03-04 01:27tomopコメント追加: 0007757
2013-03-04 01:27tomop状態新規 => 内容確認済
2013-03-04 01:53tomop添付ファイル追加: xbmc-libsmbclient-pkgconfig.patch
2013-03-04 01:55tomopコメント追加: 0007758
2013-03-04 08:13shaolin担当者 => shaolin
2013-03-04 08:13shaolin状態内容確認済 => 担当者決定
2013-03-04 08:14shaolinコメント追加: 0007759
2013-03-04 11:21shaolinコメント追加: 0007761
2013-03-04 11:23shaolin状態担当者決定 => テスト待ち
2013-03-04 22:22shirow_higaコメント追加: 0007766
2013-03-04 23:36iwamotoコメント追加: 0007768
2013-03-04 23:36iwamoto状態テスト待ち => 完了
2013-03-04 23:36iwamoto解決状況不明 => 実装済
2013-03-04 23:36iwamoto修正済バージョン => VineSeed
2013-03-04 23:36iwamoto修正予定バージョン => VineSeed

コメント
(0007757)
tomop   
2013-03-04 01:27   
 pkgconfigを利用すると以下のように必要なコンパイル・リンクオプションが出力されます。

$ pkg-config --cflags smbclient
-I/usr/include/samba-4.0

$ pkg-config --libs smbclient
-lsmbclient

 pkgconfigを利用可能なライブラリは本来、configureにてこの出力結果をオプションに追加していくのが筋です。XBMCではそれに従っていない(らしい)のが原因ではないかと。

 実際どのように対応するかは要検討です。
(0007758)
tomop   
2013-03-04 01:54   
XBMC側でpkgconfigを利用するようにするパッチを添付しました。未テスト、git HEADに対するパッチ、ということで動作するかどうかは不明です。
(0007759)
shaolin   
2013-03-04 08:14   
反応遅れてすんません。
tomop さんの patch で問題なさそうです。
いま手元でテスト中です。
のちほど修正版を put します。

# upstream にも投げておいた方がよさそうですね
(0007761)
shaolin   
2013-03-04 11:21   
12.0-2vl7 (src,i686,x86_64) を put しました。
(0007766)
shirow_higa   
2013-03-04 22:22   
shaolin様
tomop様

同じタイミングで、samba-4.0.3-2vl7への更新もあったのですが、
self-build-xbmc-12.0-2vl7で問題なくインストールが完了しました。

ご対応頂きありがとうございます。
(0007768)
iwamoto   
2013-03-04 23:36   
ご確認いただけましたので、
完了とします。