[Gluster-devel] 1.3.8 FreeBSD Compilation issues
Jordan Mendler
jmendler at ucla.edu
Thu May 8 23:30:40 UTC 2008
Thanks Amar,
1) Commenting that line out allows compilation to succeed -- I will let you
know how things work after I have a chance to try it out.
2) A few days ago, someone on IRC told me that there were changes committed
to improve FreeBSD/Linux compatibility that will be available in the next
release. Do you know when this release will be made, and how substantial the
changes are?
3) Any other suggestions, problems, differences from Linux, gotchas, etc
that I may encounter in trying to deploy this on FreeBSD?
4) If all goes well and we end up using FreeBSD for our production storage
cluster, I'd be happy to help out in preparing glusterfs for the ports
system. I have RPM development experience, so wouldn't mind using glusterfs
as an excuse to learn Ports development.
Thanks so much,
Jordan Mendler
On Thu, May 8, 2008 at 4:18 PM, Amar S. Tumballi <amar at zresearch.com> wrote:
> Hi,
> Thanks for the report,
>
>
>> First off, in addition to fusefs-kmod and bison are there any other
>> dependencies I need to install to get gluster working?
>
> Currently we haven't approved FUSE for BSD, hence having fuse translator is
> not supported as such. But I heard that few users got it to working using
> fuse port in bsd. Not sure though.
>
>
>>
>>
>> Now the issues:
>> 1) alloca.h cannot be found. Some research indicates that a fix is doing
>> "echo "#include <stdlib.h>" > /usr/include/alloca.h" which seems to fix
>> it.
>> Apparently this library is needed in linux but not explicitely needed for
>> FreeBSD. Creating the file works for now, but seems too hackish.
>>
> Not sure of it, will check, mostly I had a system with alloca.h file. Will
> check it out.
>
>
>>
>>
>> 2) I cannot figure this one out. I am not sure if it is a simple library
>> issue or what. When doing the make it breaks as follow:
>> ....
>> ....
>> Making all in storage
>> Making all in posix
>> Making all in src
>> if gcc -DHAVE_CONFIG_H -I. -I. -I../../../.. -fPIC
>> -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -DGF_BSD_HOST_OS -Wall
>> -I../../../../libglusterfs/src -shared -nostartfiles -g -O2 -MT posix.o
>> -MD -MP -MF ".deps/posix.Tpo" -c -o posix.o posix.c; then mv -f
>> ".deps/posix.Tpo" ".deps/posix.Po"; else rm -f ".deps/posix.Tpo"; exit 1;
>> fi
>> posix.c: In function 'posix_readdir':
>> posix.c:2179: error: 'struct dirent' has no member named 'd_off'
>> *** Error code 1
>>
>>
>> Does anyone know what this means and how I can fix it?
>>
> Sadly struct dirent members are different on each OS. But when I last
> compiled over BSD, i didn't had problem. I will check this too, and commit
> the fix. Meanwhile, comment the line in posix.c and continue the
> compilation. Let me know if other things break too.
>
>
>>
>>
>> Thanks so much,
>> Jordan Mendler
>>
>
> Regards,
> --
> Amar Tumballi
> Gluster/GlusterFS Hacker
> [bulde on #gluster/irc.gnu.org]
> http://www.zresearch.com - Commoditizing Super Storage!
More information about the Gluster-devel
mailing list