2012-07-06 24 views
1
use Image::Imlib2; 
my $a = Image::Imlib2->load("/foo/file"); 

給我下面的錯誤文件不存在:圖片:: Imlib2->負載(「文件名」)指出,即便它

Runtime error: Image::Imlib2 load error: File does not exist at (eval 469) line 6. 

注意/富/文件是CIFS這隻會發生在CIFS掛載目錄中的文件上。另外一個複雜的情況是,這發生在Debian Squeeze上,而Debian Lenny沒有。

回答

1

解決方案是使用'noserverino'選項掛載CIFS目錄。

Image :: Imlib2是Imlib2 C庫的Perl包裝器。問題是CIFS服務器可以返回inode整數值> 31^2。這使程序不能編譯LFS(大文件支持),以引發glibc EOVERFLOW錯誤。要麼編譯支持LFS的程序(即使用-D_FILE_OFFSET_BITS = 64)或使用「noserverino」安裝選項。但是,您可能無法正確檢測硬鏈接。

http://linux.die.net/man/8/mount.cifs