fuse Please add D_FILE_OFFSET_BITS=64 to your compile flags

fuseのサンプルプログラムをコンパイルしようとすると、

/usr/local/include/fuse/fuse_common.h:32:2: error: #error Please add -D_FILE_OFFSET_BITS=64 to your compile flags!

と出てしまった。

D_FILE_OFFSET_BITS=64

は2GB以上のファイルを扱うときは必要らしい。

gcc xxxxx -D_FILE_OFFSET_BITS=64 yyyy.c

ってやれば、エラーがでなくなる。

参考リンク

日常とプログラム 3.6.10 http://blog.auone.jp/thachi/entry/detail/?EP=38299113

[mld-ml:7824] 2GB 以上の大きさのファイルを正しく扱うには。 http://www.mlb.co.jp/linux/mld-ml/200101/msg00069.html

Old Nabble - Fuse - Dev - Compiling FUSE for 32 bit system. http://old.nabble.com/Compiling-FUSE-for-32-bit-system.-td16297085.html

Package fuse was not found in the pkg-config search path

fuseのcサンプルコードのコンパイルではさらにエラーが出る

Package fuse was not found in the pkg-config search path.
Perhaps you should add the directory containing `fuse.pc'
to the PKG_CONFIG_PATH environment variable
No package 'fuse' found

結論

こうやればいい

# PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"
# export PKG_CONFIG_PATH
# gcc -Wall `pkg-config fuse --cflags --libs` file_name.c -o file_name_exe

解決法

fuse.pcを探す

# find / -name fuse.pc
/usr/local/lib/pkgconfig/fuse.pc

pkg-configはpkg-configはあるライブラリ(例えばlibdrm)を使うプログラムをコンパイルする際に必要になる各種コンパイルフラグを出力するツール。

らしい。このリストにfuseが入ってない。

#pkg-config --list-all

をやるとfuse.pcがない

PKG_CONFIG_PATHを追加すると

#pkg-config --list-all
.....
fuse            fuse - Filesystem in Userspace
.....

と追加される。

これでサンプルコードのコンパイルコマンドでコンパイルできる

参考リンク

Tatsuyoshi tech diary http://www.tatsuyoshi.net/toyota/tech/200712.html

FUSEをつかってみる - しょんぼり技術メモ http://d.hatena.ne.jp/syonbori_tech/20100520/1274347549

pkg-config | ブーログ http://ambiesoft.ddo.jp/blog/archives/66

pkg-configに対応する - デー http://d.hatena.ne.jp/ultraist/20070624/pkgconfig

fuse: device not found, try 'modprobe fuse' first

別のCentOSマシンにソースコードからfuse入れたら、コンパイルして実行しても下記のエラーが出た。

fuse: device not found, try 'modprobe fuse' first

その通りやってもだめ

# modprobe fuse
FATAL: Module fuse not found.

参考リンクの通りにyumでいれようとしたが入らない。

#yum install kernel-devel
#rpm -ihv dkms-2.1.1.2-1.el5.rf.noarch.rpm
#rpm -ihv dkms-fuse-2.7.4-1.nodist.rf.noarch.rpm

参考リンク


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-10-01 (金) 16:35:45 (3182d)