質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

2335閲覧

Python llfuseのインストールができません(CentOS 6.8)

myr0326

総合スコア7

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2016/07/08 03:42

初めて質問させていただきます。
表題の通りですが、CentOS 6.8上にPhthonのパッケージであるllfuseをインストールしようとしたところ、どうしても上手く行かず困っています。

###前提・実現したいこと
本来やりたいことはS3QLのインストールです。
http://qiita.com/hikaru_uchiyama/items/504b7e5e75f747c12366
こちらの記事を参考に、Google Cloud Platform上にまっさらのCentOS 6.8のVMを立ち上げて作業を進めているのですが、
どうしてもllfuseのインストール段階でエラーが出てしまいます。

###発生している問題・エラーメッセージ
easy_install-3.3 -U llfuseを実行してみた結果です。

[root@instance-1 rpm-gpg]# easy_install-3.3 -U llfuse Searching for llfuse Reading http://pypi.python.org/simple/llfuse/ Best match: llfuse 1.1 Downloading https://pypi.python.org/packages/bb/17/8f5d98f5f005cd041635fc6836ad8a91f92dea4d41459f13763f630924c6/llfuse-1.1.tar.bz2#md5=a11a1bc606511fe0933c3e3d41237f0e Processing llfuse-1.1.tar.bz2 Writing /tmp/easy_install-2xm_ah/llfuse-1.1/setup.cfg Running llfuse-1.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-2xm_ah/llfuse-1.1/egg-dist-tmp-zfltv7 In file included from src/llfuse.c:250: src/llfuse.h:39:2: error: #error FUSE version too old, 2.9.0 or newer required src/llfuse.c:1287: warning: ‘struct fuse_forget_data’ declared inside parameter list src/llfuse.c:1287: warning: its scope is only this definition or declaration, which is probably not what you want src/llfuse.c:1301: warning: ‘struct fuse_bufvec’ declared inside parameter list src/llfuse.c:1325: warning: ‘struct fuse_bufvec’ declared inside parameter list src/llfuse.c:8146: warning: ‘struct fuse_forget_data’ declared inside parameter list src/llfuse.c:8146: error: conflicting types for ‘__pyx_f_6llfuse_fuse_forget_multi’ src/llfuse.c:1287: note: previous declaration of ‘__pyx_f_6llfuse_fuse_forget_multi’ was here src/llfuse.c: In function ‘__pyx_f_6llfuse_fuse_forget_multi’: src/llfuse.c:8218: error: invalid use of undefined type ‘struct fuse_forget_data’ src/llfuse.c:8218: error: dereferencing pointer to incomplete type src/llfuse.c:8220: error: invalid use of undefined type ‘struct fuse_forget_data’ src/llfuse.c:8220: error: dereferencing pointer to incomplete type src/llfuse.c: At top level: src/llfuse.c:15763: warning: ‘struct fuse_bufvec’ declared inside parameter list src/llfuse.c:15763: error: conflicting types for ‘__pyx_f_6llfuse_fuse_write_buf’ src/llfuse.c:1301: note: previous declaration of ‘__pyx_f_6llfuse_fuse_write_buf’ was here src/llfuse.c: In function ‘__pyx_f_6llfuse_fuse_write_buf’: src/llfuse.c:15828: warning: passing argument 1 of ‘__pyx_f_6llfuse_PyBytes_from_bufvec’ from incompatible pointer type src/llfuse.c:1325: note: expected ‘struct fuse_bufvec *’ but argument is of type ‘struct fuse_bufvec *’ src/llfuse.c: In function ‘__pyx_f_6llfuse_init_fuse_ops’: src/llfuse.c:25716: error: ‘struct fuse_lowlevel_ops’ has no member named ‘forget_multi’ src/llfuse.c:25725: error: ‘struct fuse_lowlevel_ops’ has no member named ‘write_buf’ src/llfuse.c: At top level: src/llfuse.c:32198: warning: ‘struct fuse_bufvec’ declared inside parameter list src/llfuse.c:32198: error: conflicting types for ‘__pyx_f_6llfuse_PyBytes_from_bufvec’ src/llfuse.c:1325: note: previous declaration of ‘__pyx_f_6llfuse_PyBytes_from_bufvec’ was here src/llfuse.c: In function ‘__pyx_f_6llfuse_PyBytes_from_bufvec’: src/llfuse.c:32199: error: storage size of ‘__pyx_v_dst’ isn’t known src/llfuse.c:32218: warning: implicit declaration of function ‘fuse_buf_size’ src/llfuse.c:32218: error: dereferencing pointer to incomplete type src/llfuse.c:32325: warning: implicit declaration of function ‘fuse_buf_copy’ src/llfuse.c:32199: warning: unused variable ‘__pyx_v_dst’ src/llfuse.c: In function ‘__pyx_f_6llfuse_session_loop’: src/llfuse.c:36200: error: storage size of ‘__pyx_v_buf’ isn’t known src/llfuse.c:36295: warning: implicit declaration of function ‘fuse_session_receive_buf’ src/llfuse.c:36452: warning: implicit declaration of function ‘fuse_session_process_buf’ src/llfuse.c:36200: warning: unused variable ‘__pyx_v_buf’ src/llfuse.c: In function ‘__pyx_pf_6llfuse_22notify_store’: src/llfuse.c:38838: error: storage size of ‘__pyx_v_bufvec’ isn’t known src/llfuse.c:38906: error: invalid use of undefined type ‘struct fuse_buf’ src/llfuse.c:38906: error: dereferencing pointer to incomplete type src/llfuse.c:38916: error: invalid use of undefined type ‘struct fuse_buf’ src/llfuse.c:38916: error: dereferencing pointer to incomplete type src/llfuse.c:38925: error: invalid use of undefined type ‘struct fuse_buf’ src/llfuse.c:38925: error: dereferencing pointer to incomplete type src/llfuse.c:38968: warning: implicit declaration of function ‘fuse_lowlevel_notify_store’ src/llfuse.c:38838: warning: unused variable ‘__pyx_v_bufvec’ error: Setup script exited with error: command 'gcc' failed with exit status 1

記事中にはpipを使用しても良いとのことでしたので、pip install llfuseも試してみたのですが、
違うエラーが出力されやはりインストールできませんでした。
(エラー内容を全文貼り付けたいのですが文字数制限に引っかかってしまうため、何か別コメントで補足などできるようでしたらそちらで記述しようかと思います)

[root@instance-1 rpm-gpg]# pip install llfuse Collecting llfuse Downloading llfuse-1.1.tar.bz2 (326kB) 100% |████████████████████████████████| 327kB 2.5MB/s Building wheels for collected packages: llfuse Running setup.py bdist_wheel for llfuse ... error Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-5vnf3k/llfuse/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmp7ihi9ppip-wheel- --python-tag cp33: Traceback (most recent call last): File "/usr/lib/python3.3/site-packages/pkg_resources.py", line 2465, in _dep_map return self.__dep_map File "/usr/lib/python3.3/site-packages/pkg_resources.py", line 2290, in __getattr__ raise AttributeError(attr) AttributeError: _DistInfoDistribution__dep_map During handling of the above exception, another exception occurred: src/llfuse.c:38838: warning: unused variable ‘__pyx_v_bufvec’ error: command 'gcc' failed with exit status 1 (中略) ---------------------------------------- Command "/usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-5vnf3k/llfuse/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-c4_zb1-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-5vnf3k/llfuse/

自分で軽く調べてみたところ、別記事で「python-develが必要」との記述を見かけたため、yum install python-develを実行してインストールしました。
こちらはうまく行きました。

その後、再度easy_install-3.3 -U llfusepip install llfuseを実行してみましたがやはりエラーが出てしまいインストールできませんでした。
念のためyum updateも行いましたが状況は変わらずです。

###補足情報(言語/FW/ツール等のバージョンなど)
上にも書いた通り、Google Cloud Platform上にCentOS 6.8のVMを立ち上げて作業しています。
また、本来やりたいことはS3QLのインストールです。

PHPエンジニアとしての経歴はあるのですが、LinuxやPythonの知識がほとんど無くお手上げ状態になっています。
何かお分かりの方がいましたらアドバイスして頂けると幸いです。

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

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

こちら締め切るのがだいぶ遅くなってしまい申し訳ありません。
解決方法ですが、結局GCP環境であるのでgoogleが提供しているgcsfuseコマンドが使用できることに気付き、S3QLを諦めそちらをインストールしたところ無事にマウントまでできました。
ご回答いただきましたshi_ue様、本当にありがとうございました。

投稿2016/07/21 09:17

myr0326

総合スコア7

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

src/llfuse.h:39:2: error: #error FUSE version too old, 2.9.0 or newer required ```FUSEが古いって言ってますよ。 yumでは2.8.3が最新みたいなので、どこからか2.9.0以降を持ってくるしかなさそうです。 こちらはs3fsのインストールですが、同じくfuseの新しいバージョンを入れてます。 [http://hacknote.jp/archives/3952/](http://hacknote.jp/archives/3952/) 参考まで。

投稿2016/07/08 04:31

編集2016/07/08 04:33
shi_ue

総合スコア4437

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

myr0326

2016/07/08 07:57 編集

ありがとうございます! 記事の通りにFUSE 2.9.3を入れてみたところ、無事にllfuseのインストールが完了しました。 ところが今度は肝心のS3QLのインストールで詰まってしまいました… python3 setup.py build_ext --include-dirs='/usr/local/sqlite-3.9/include' --library-dirs='/usr/local/sqlite-3.9/lib' --inplace を実行すると下記のエラーが出力されてしまいます。 [root@instance-1 s3ql-2.15]# python3 setup.py build_ext --include-dirs='/usr/local/sqlite-3.9/include' --library-dirs='/usr/local/sqlite-3.9/lib' --inplace Traceback (most recent call last): File "setup.py", line 46, in <module> import s3ql File "/usr/local/src/s3ql-2.15/src/s3ql/__init__.py", line 13, in <module> from llfuse import ROOT_INODE ImportError: /usr/lib/python3.3/site-packages/llfuse-1.1-py3.3-linux-x86_64.egg/llfuse.cpython-33m.so: undefined symbol: fuse_lowlevel_notify_store とりあえずllfuseのインストールは無事できましたことを報告させていただきます。 ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問