Hi All!
I've noticed that someone made a headstart with a unit to bind with FUSE in FreePascal at http://bugs.freepascal.org/view.php?id=12218. I've taken the last two entries (FUSE-2008-12-20-3.PP and Test-2008-12-20-3.PP) and modified the test file on line 88 to use the move() function instead of memcpy() -- and so eliminating the need for the "libc" unit. It compiles, but it fails at linking with this error:
...
Linking Project1
/usr/bin/ld: cannot find -lfuse
...
Okay, strange, nowhere do I see "fuse" specified. But upon closer inspection, it turns out something this gets lost in translation. For example, in the FUSE-2008-12-20-3.PP file, it contains:
...
const
FUSELIBFile = 'libfuse.so.2';
function fuse_main_real(aARGC : Integer; aARGV: PPChar; aOperations :
TOperationsP; aOperationsSize : size_t; aUserData : Pointer) : Integer;
cdecl; external FUSELIBFile;
...But in the link.res file I see:
...
INPUT(
-lfuse
)
...
Even if I were to specify:
...
const
FUSELIBFile = '/lib/libfuse.so.2';
...Then the link.res file tries to use:
...
INPUT(
-l/lib/libfuse
)
...
So, where's the rest of the library's name? Is it a bug? Did I make a mistake on my end? ( And yes, that library is actually available on my system )
As noted in the subject, I'm using FPC 2.5.1 SVN rev 13680 from September 8th, x86_64 Linux (ppcrossx64). Kernel: 2.6.28-15-generic #49-Ubuntu SMP Tue Aug 18 19:25:34 UTC 2009 x86_64 GNU/Linux
-- MG
