configure時のエラー対処法を教えてください

リリースされた日本語版に関するもの

モデレータ: 暇人, YoN, nyu

TaDa
記事: 67
登録日時: 08/03/19(水) 10:57
お住まい: 神戸

configure時のエラー対処法を教えてください

投稿記事 by TaDa »

皆さん、お知恵をお貸しください。

ミュージックプレーヤーをインストールしたいと思いますが、
petパッケージの中には見つけることが出来なかったので、
Audiciaousをソースからインストールしようとしています。

しかし、configure実行時に下記のエラーでストップします。
>>error: Cannot find Glib2 >= 2.14.0

pet_packageを見ると、Puppyには 2.14が入っている筈?
と思うのですが、もしかして古いのかもと考え、
Gtkのサイトからglib+2.16.1のソースを取ってきてコンパイル、
インストールしましたが、やはりconfigure時に同じエラーが出ます。

こういう場合、どう対処すれば良いのでしょうか。。。
よろしくお願い致します。


現在のPuppyの環境は、
暇人さん作 puppy-4.00-k2.6.21.7-canna.iso (非公式版)を使用させて頂き、
devx_400.sfs をブート時に読み込ませて使用しています。
アバター
暇人
記事: 2392
登録日時: 07/08/12(日) 23:33
お住まい: 埼玉県xx市並4
連絡する:

投稿記事 by 暇人 »

同様の状況になったことがあるけど
解決方法は不明です。

./configure --prefix=/usr

でうまくいくこともあったかも。
管理人見習い
NEC Express5800 S70/SR G6950 2.8GHz/1G
lenovo S10-3 AtomN450 1.66G/1G
暇人/貳馬力/2CV
oh
記事: 28
登録日時: 08/04/30(水) 21:39

投稿記事 by oh »

pkg-config コマンドが該当するライブラリを見つけられないのではないでしょうか?

glib2 はどこにインストールされていますか?

また、環境変数 PKG_CONFIG_PATH はどうなっていますか?
# echo $PKG_CONFIG_PATH
TaDa
記事: 67
登録日時: 08/03/19(水) 10:57
お住まい: 神戸

投稿記事 by TaDa »

コメントありがとうございます。

>>暇人さん
./configure --prefix=/usr を実行してみましたが、
やはり同じエラーメッセージが出て止まりました。



>>ohさん

glib2の場所は、どれを指せば良いのか分かりませんので、
treeコマンドの出力結果を貼ります

# tree -d -f -L 5 | grep glib-2
| | | |-- ./initrd/pup_ro2/usr/share/glib-2.0
| | | | |-- ./initrd/pup_ro3/usr/include/glib-2.0
| | | | |-- ./initrd/pup_ro3/usr/lib/glib-2.0
| | |-- ./usr/include/glib-2.0
| | | |-- ./usr/include/glib-2.0/glib
| | | `-- ./usr/include/glib-2.0/gobject
| | |-- ./usr/lib/glib-2.0
| | | `-- ./usr/lib/glib-2.0/include
| | | `-- ./usr/local/include/glib-2.0
| | | |-- ./usr/local/include/glib-2.0/gio
| | | |-- ./usr/local/include/glib-2.0/glib
| | | `-- ./usr/local/include/glib-2.0/gobject
| | | |-- ./usr/local/lib/glib-2.0
| | | | `-- ./usr/local/lib/glib-2.0/include
| | |-- ./usr/local/share/glib-2.0
| | | `-- ./usr/local/share/glib-2.0/gettext
| |-- ./usr/share/glib-2.0
| | `-- ./usr/share/glib-2.0/gettext
| | `-- ./usr/share/glib-2.0/gettext/po




環境変数 PKG_CONFIG_PATH は、以下の通りです。

# echo $PKG_CONFIG_PATH
/usr/lib/pkgconfig:/usr/X11R7/lib/pkgconfig


よろしくお願い致します。





※※
ディレクトリ構造を見る treeコマンドがPuppyに無かったので、
ソースからpetパッケージを作ってインストールしました。
私の様な初心者には便利なコマンドだと思うのですが。。。。
oh
記事: 28
登録日時: 08/04/30(水) 21:39

投稿記事 by oh »

> glib2の場所は、どれを指せば良いのか分かりませんので、

# ./configure --help

とすればわかると思いますが、--prefix を指定しないと、たいていデフォルトで /usr/local/ 以下にインストールされます。

今同じ環境(puppy-4.00-k2.6.21.7-canna.iso)で試してみましたが、

>>error: Cannot find Glib2 >= 2.14.0

には、なりませんでしたよ。

できれば、一度きれいな(インストール直後の)環境で試したほうがよいと思います。

ちなみに以下のように glib のチェックにはパスして、libmowgli が無いとおこられました。

# ./configure
<..snip..>
checking for glib-2.0 >= 2.14.0 gthread-2.0... yes
checking GLIB_CFLAGS... -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
checking GLIB_LIBS... -pthread -lgthread-2.0 -lrt -lglib-2.0
checking for gtk+-2.0 >= 2.10.0... yes
checking GTK_CFLAGS... -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/pixman-1 -I/usr/X11R7/include
checking GTK_LIBS... -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
checking for pango >= 1.8.0... yes
checking PANGO_CFLAGS... -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
checking PANGO_LIBS... -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
checking for libmowgli >= 0.4.0... no
configure: error: Cannot find libmowgli, try http://www.atheme.org/projects/mowgli.shtml
アバター
暇人
記事: 2392
登録日時: 07/08/12(日) 23:33
お住まい: 埼玉県xx市並4
連絡する:

投稿記事 by 暇人 »

ライブラリ揃えていけるとこまでやってみたけど
途中でコンパイルエラーで終了しました。

ちなみにBMPならあるよ。
http://namiki4no20no4.dyndns.org/p_blog ... .9.7.1.pet
管理人見習い
NEC Express5800 S70/SR G6950 2.8GHz/1G
lenovo S10-3 AtomN450 1.66G/1G
暇人/貳馬力/2CV
TaDa
記事: 67
登録日時: 08/03/19(水) 10:57
お住まい: 神戸

投稿記事 by TaDa »

oh さん


アドバイス頂いたように、きれいな環境を入れて試してみました。
(暇人さん最新作の canna02a版を頂きました)

すると、ohさん御指摘の通りの結果となりましたので、
libmowgli-0.6.1のソースをダウンロード→インストールリブート後、
(link先のatheme.orgからはダウンロード出来ずググりました)

再度configureを実行したのですが、やはりlibmowgliが見つからないと
エラーが出ました。。。う‾む。。。

下記の通り、libmowgli はインストールされているのですが。

このインストール先が良くないと言うことなのでしょうか?


# cd /usr/local/lib
# ls -la
total 72
drwxr-xr-x 5 root root 4096 2008-05-14 00:40 .
drwxr-xr-x 25 root root 4096 2008-05-14 00:40 ..
drwxr-xr-x 5 root root 83 2008-05-13 20:54 X11
lrwxrwxrwx 1 root root 18 2008-05-14 00:40 libmowgli.so -> libmowgli.so.1.0.0
lrwxrwxrwx 1 root root 18 2008-05-14 00:40 libmowgli.so.1 -> libmowgli.so.1.0.0
-rwxr-xr-x 1 root root 57142 2008-05-14 00:40 libmowgli.so.1.0.0
drwxr-xr-x 2 root root 4096 2008-05-14 00:40 pkgconfig
drwxr-xr-x 3 root root 25 2008-05-13 19:37 xarchive





暇人さん

BMP頂きました。ありがとうございました。
無事インストール出来ましたので音楽は此で聞くことが出来ました!

が。。。コンパイルが出来ないのは悔しいので(汗)
いま暫く格闘してみたいと思います。


そうですか、暇人さんの環境ではconfigureは通過したのですか。。。
く‾‾‾。。。

>>ライブラリ揃えていけるとこまでやってみたけど
もし覚えておられたら、どんなライブラリを入れられたのか、
教えてくださいませんか?
アバター
暇人
記事: 2392
登録日時: 07/08/12(日) 23:33
お住まい: 埼玉県xx市並4
連絡する:

投稿記事 by 暇人 »

ライブラリも --prefix=/usr つけて
コンフィグしないと見えないところにインストールされちゃう。

ちょっと古いけどpetパッケージありました。
http://puppyfiles.org/dotpupsde/dotpups ... ous-1.2.2/

おっと、起動するけどmp3演奏不能だった。

入れたのは
libmcs & libmowgli
最後に編集したユーザー 暇人 [ 08/05/14(水) 01:55 ], 累計 4 回
管理人見習い
NEC Express5800 S70/SR G6950 2.8GHz/1G
lenovo S10-3 AtomN450 1.66G/1G
暇人/貳馬力/2CV
oh
記事: 28
登録日時: 08/04/30(水) 21:39

投稿記事 by oh »

> 下記の通り、libmowgli はインストールされているのですが。
>
> このインストール先が良くないと言うことなのでしょうか?

pkg-config コマンドが libmowgli を見つけられてないのです。多分。

PKG_CONFIG_PATH を適切に設定していますか?

pkg-config コマンドは環境変数 PKG_CONFIG_PATH に指定されている場所しかライブラリを探しに行ってくれないので、/usr/local/ 以下にインストールしたのでしたら、次のように PKG_CONFIG_PATH に /usr/local/lib/pkgconfig を追加してあげないといけませんよ。

# export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/usr/local/lib/pkgconfig
アバター
暇人
記事: 2392
登録日時: 07/08/12(日) 23:33
お住まい: 埼玉県xx市並4
連絡する:

4.00標準だと

投稿記事 by 暇人 »

# echo $PKG_CONFIG_PATH
/usr/lib/pkgconfig:/usr/X11R7/lib/pkgconfig:/opt/qt4/lib/pkgconfig:/opt/mozilla.org/lib/pkgconfig
管理人見習い
NEC Express5800 S70/SR G6950 2.8GHz/1G
lenovo S10-3 AtomN450 1.66G/1G
暇人/貳馬力/2CV
TaDa
記事: 67
登録日時: 08/03/19(水) 10:57
お住まい: 神戸

投稿記事 by TaDa »

ohさん、暇人さん、コメントありがとうございます。

今まで、インストールして使うことが殆んどのユーザーでしたので、
理解が遅いと思いますが、何卒よろしくお願いします。


コメントを頂いて、linuxのディレクトリ構造と各々の意味を勉強しました。
今回の様にユーザがインストールする先は、/usr/local以下が良いだろうと
言うことが理解できました。
また、pkg-configがデータファイルを探す為のPATHを設定しないと、
コンパイラに情報が伝わらないと言うことも理解出来ました。

.bashrc に下記を追加しました。
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib"
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig"

結果は、以下の通りok!(ですよね?汗)
# echo $PKG_CONFIG_PATH
/usr/lib/pkgconfig:/usr/X11R7/lib/pkgconfig:/opt/qt4/lib/pkgconfig
:/opt/mozilla.org/lib/pkgconfig:/usr/local/lib/pkgconfig




そして、リブート後、libmowgli と libmcs のコンパイルに成功、
petファイル作成も成功しインストールしました。

libmowgliのインストールはノーエラーで完了したのですが、
libmcsのインストール時に、dependencie are missingと。。。

スナップを撮ったのですが画像の張り付け方が分かりませんので、
いくつかを下記に書き写します。

File /usr/local/lib/libmcs.so.1.0.0 has these missing
library files:libmowgli.so.1

File /usr/local/lib/mcs/keyfile.so has these missing
library files:libmcs.so.1 libmowgli.so.1

File /usr/local/bin/mcs-getconfval has these missing
library files:libmcs.so.1 libmowgli.so.1

どうやら、このままでは上手くいきそうにありませんが、どうしたら良いのか
皆目検討がつきません。



取りあえず audaciousのconfigureを実行してみました。

その結果、やはり警告が出てしまいました。(上記のせいでは無いような。。)
エラーではありませんが、makeせよとメッセージが出ませんでしたので、
今日のところは此処で中断しました。


configureの出力したメッセージは以下の通りです。

configure: creating ./config.status
config.status: creating audacious.pc
config.status: WARNING: audacious.pc.in seems to ignore the
--datarootdir setting
config.status: creating audclient.pc
config.status: WARNING: audclient.pc.in seems to ignore the
--datarootdir setting
config.status: creating buildsys.mk
config.status: creating extra.mk
config.status: creating man/audtool.1
config.status: creating man/audacious.1
config.status: creating applications/audacious.desktop
config.status: creating po/Makefile.in
config.status: WARNING: po/Makefile.in.in seems to ignore the --datarootdir setting
config.status: creating config.h
config.status: executing default-1 commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: executing depfiles commands

Configuration:

Install path: /usr/local
Legacy configuration path: $HOME/.audacious

Use one plugin dir: no
Allow user plugin dir: yes

Automatic character code detection: yes
Sample rate upconversion: no
D-Bus support: no

SSE2: yes
AltiVec: no



--datarootdirの設定を無視している。。。というような警告です。

そこで、 configure --help を見てみますと
--datarootdir=DIR read-only arch.-independent data root [PREFIX/share]

PREFIXはデフォルトのままですので、--datarootdir=/usr/local/share となります。


無視していると言われた対象のファイルの中身は以下の通りです。

prefix=@prefix@
exec_prefix=@exec_prefix@
data_dir=@datadir@/@PACKAGE_NAME@

version=@PACKAGE_VERSION@
audacious_include_dir=@includedir@
lib_dir=@libdir@

Name: Audacious Client Library
Description: Remote control library for Audacious
Version: @PACKAGE_VERSION@
Requires: @PC_REQUIRES@
Libs: -L${lib_dir} @LIBAUDCLIENT_LDFLAGS@
Cflags: -I${audacious_include_dir}



これの何処が駄目なのか全く分かりません。。。(汗)

アドバイス頂ければ幸いです。
よろしくお願い致します。
アバター
暇人
記事: 2392
登録日時: 07/08/12(日) 23:33
お住まい: 埼玉県xx市並4
連絡する:

投稿記事 by 暇人 »

各ライブラリのコンフィグ時のオプションは?

--prefix=/usrで構成したaudaciousのライブラリ他一式がうちのwwwにあるので
使ってみてください。
管理人見習い
NEC Express5800 S70/SR G6950 2.8GHz/1G
lenovo S10-3 AtomN450 1.66G/1G
暇人/貳馬力/2CV
アバター
暇人
記事: 2392
登録日時: 07/08/12(日) 23:33
お住まい: 埼玉県xx市並4
連絡する:

投稿記事 by 暇人 »

/usr/local/lib/libmowgli.so.1.0.0 を探す。
ある?無ければlibmowgliのインストールしなおし。
有れば、/usr/local/lib/libmowgli.so.1を探す。
有れば、原因不明
無ければ、/usr/local/lib/libmowgli.so.1.0.0 を/usr/local/lib/libmowgli.so.1に
シンボリックリンク。

注意!何度もインストールをやり直すときは、できるだけ以前のインストールの
痕跡を削除するべき。(make uninstall でできることも有る。)
複数インストールされてたりしないだろうか?
最後に編集したユーザー 暇人 [ 08/05/15(木) 09:10 ], 累計 1 回
管理人見習い
NEC Express5800 S70/SR G6950 2.8GHz/1G
lenovo S10-3 AtomN450 1.66G/1G
暇人/貳馬力/2CV
TaDa
記事: 67
登録日時: 08/03/19(水) 10:57
お住まい: 神戸

投稿記事 by TaDa »

>>各ライブラリのコンフィグ時のオプションは?

prefixは usr/local で良いと思ったので、オプションは何も付けておりません。
configureのヘルプを見ても、デフォルトを変更した方が良いと特に感じませんでした。
(。。。。って、素人考えですが)


>>--prefix=/usrで構成したaudaciousのライブラリ他一式がうちのwwwにあるので
使ってみてください。

ありがとうございます。拝見してみます。
TaDa
記事: 67
登録日時: 08/03/19(水) 10:57
お住まい: 神戸

投稿記事 by TaDa »

暇人さん ありがとうございます。


>>注意!何度もインストールをやり直すときは、できるだけ以前のインストールの
>>痕跡を削除するべき。(make uninstall でできることも有る。)
>>複数インストールされてたりしないだろうか?

はい、最初の失敗により、これを確実に行っております。
今回のエラーは、まっさらの環境で行った最初の動作で出ました。

画面のスナップを取ってなかったので、petマネージャでアンインストールし、
コンパイルした関連ファイルをすべて削除したうえで再度実行し、
同じメッセージが出たものを投稿しました。


>>/usr/local/lib/libmowgli.so.1.0.0 を探す。
>>ある?無ければlibmowgliのインストールしなおし。
>>有れば、/usr/local/lib/libmowgli.so.1を探す。
>>有れば、原因不明
>>無ければ、/usr/local/lib/libmowgli.so.1.0.0 を/usr/local/lib/libmowgli.so.1に
>>シンボリックリンク。

今夜帰宅後、再度まっさらな状態にして、アドバイスを元にチェックしてみます。
返信する