web-dev-qa-db-ja.com

s3fsはCentOS7でのコンパイルを拒否しますが、なぜFuseが見つからないのですか?

CentOS 7.3でデフォルトで利用可能なFuseパッケージは、少し古くなっています。 Fuse 3とs3fsのコンパイルプロセスは、非常に簡単です。 Fuseは正常にコンパイルおよびインストールされます。

mkdir ~/src && cd src
# Most recent version: https://github.com/libfuse/libfuse/releases
wget https://github.com/libfuse/libfuse/releases/download/Fuse-3.0.0/Fuse-3.0.0.tar.gz
tar xvf Fuse-3.0.0.tar.gz && cd Fuse-3.0.0
./configure --prefix=/usr
make 
make install
export PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/lib64
ldconfig
modprobe Fuse
pkg-config –modversion Fuse

そこには問題はありません...見た目はどこにでも表示されます、$ ls /usr/lib

libfuse3.a
libfuse3.la
libfuse3.so
libfuse3.so.3
libfuse3.so.3.0.0
pkgconfig
udev

$ ls /usr/local/lib/pkgconfig/

Fuse3.pc

$ which fusermount3

/ usr/bin/fusermount3

だから私はs3fsのインストールに進みます:

cd ~/src
git clone https://github.com/s3fs-Fuse/s3fs-Fuse.git
cd s3fs-Fuse
./autogen.sh
./configure --prefix=/usr

そして毎回、私はこれを打ちます:

...
configure: error: Package requirements (Fuse >= 2.8.4 libcurl >= 7.0 libxml-2.0 >= 2.6) were not met:

No package 'Fuse' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables common_lib_checking_CFLAGS
and common_lib_checking_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

s3fsがFuseを正しく見つけられない理由はありますか?

2
ylluminate

S3fsのバージョン1.8はFuse3をサポートしていません。私はそれをかなり難しい方法で学びました。

S3fs configureスクリプトを編集して、バージョンチェックでFuseをFuse3に置き換えました。その後、configureスクリプトはうまくいきました。ただし、s3fsのコンパイルは失敗し、使用されているFuse関数との非互換性に関するエラーが発生します。 (正確なコンパイルエラーはありません-エラーを保存しませんでした)。

最終的にFuse2.9.xをインストールしましたが、s3fsのインストールはうまくいきました。

1
Jitendra

試してください:

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/

その後:

./configure
0
TomiC