Centos
s3fs 拒絕在 CentOS 7 上編譯,為什麼找不到 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
沒有正確找到保險絲嗎?
s3fs 1.8 版不支持 fuse3。我學得很辛苦。
我編輯了 s3fs 配置腳本以在版本檢查中用 fuse3 替換 fuse。之後配置腳本執行良好。但是,s3fs 編譯失敗,出現與使用的熔絲函式不兼容的一些錯誤。(我沒有確切的編譯錯誤 - 沒有保存錯誤)。
我最終安裝了 fuse 2.9.x 並且 s3fs 安裝順利。
嘗試:
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/
進而:
./configure