Daniel Maher
2008-Jul-21  12:10 UTC
[Gluster-users] 1.3.10 compile failure on FC9 w/ Gluster-patched Fuse
Hello all,
I am attempting to compile Gluster 1.3.10 on a newly-installed Fedora
Core 9 machine, without success.  The only non-stock package on the
otherwise vanilla system is the Gluster version of Fuse.
-----------------------
# rpm -qa | grep fuse
fuse-devel-2.7.3glfs10-1.i386
fuse-2.7.3glfs10-1.i386
fuse-libs-2.7.3glfs10-1.i386
# rpmbuild -ta glusterfs-1.3.10.tar.gz
(..snip..)
make[5]: Entering directory
`/usr/src/redhat/BUILD/glusterfs-1.3.10/xlators/protocol/server/src' if
gcc -DHAVE_CONFIG_H -I. -I. -I../../../..    -fPIC
-D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -Wall -DGF_LINUX_HOST_OS
-I../../../../libglusterfs/src -shared -nostartfiles
-DDATADIR=\"/var\"
-DCONFDIR=\"/etc/glusterfs\"  -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
--param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic
-fasynchronous-unwind-tables -MT server-protocol.o -MD -MP -MF
".deps/server-protocol.Tpo" -c -o server-protocol.o server-protocol.c;
\ then mv -f ".deps/server-protocol.Tpo"
".deps/server-protocol.Po";
else rm -f ".deps/server-protocol.Tpo"; exit 1; fi server-protocol.c:
In function 'stat_to_str': server-protocol.c:120: warning: ignoring
return value of 'asprintf', declared with attribute warn_unused_result
server-protocol.c: In function 'mop_setvolume': server-protocol.c:5625:
warning: ignoring return value of 'asprintf', declared with attribute
warn_unused_result server-protocol.c:5648: warning: ignoring return
value of 'asprintf', declared with attribute warn_unused_result In
function 'open', inlined from 'mop_setspec' at
server-protocol.c:5356: /usr/include/bits/fcntl2.h:51: error: call to
'__open_missing_mode' declared with attribute error: open with O_CREAT
in second argument needs 3 arguments make[5]: *** [server-protocol.o]
Error 1 make[5]: Leaving directory
`/usr/src/redhat/BUILD/glusterfs-1.3.10/xlators/protocol/server/src'
make[4]: *** [all-recursive] Error 1 make[4]: Leaving directory
`/usr/src/redhat/BUILD/glusterfs-1.3.10/xlators/protocol/server'
make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory
`/usr/src/redhat/BUILD/glusterfs-1.3.10/xlators/protocol' make[2]: ***
[all-recursive] Error 1 make[2]: Leaving directory
`/usr/src/redhat/BUILD/glusterfs-1.3.10/xlators' make[1]: ***
[all-recursive] Error 1 make[1]: Leaving directory
`/usr/src/redhat/BUILD/glusterfs-1.3.10' make: *** [all] Error 2 error:
Bad exit status from /var/tmp/rpm-tmp.63368 (%build)
RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.63368 (%build)
-----------------------
Just for fun, i tried to build the 1.3.10 release on an FC8 machine
(with the normal FC8 fuse package, though i'm not sure that would make
a difference), and it compiled and built the RPMs cleanly.
Any ideas ?
-- 
Daniel Maher <dma AT witbe DOT net>
Daniel Maher
2008-Jul-22  08:18 UTC
[Gluster-users] 1.3.10 compile failure on FC9 w/ Gluster-patched Fuse
On Mon, 21 Jul 2008 14:20:40 -0700 Keith Freedman <freedman at FreeFormIT.com> wrote:> I was able to successfully compile gluster 1.3.10 on FC9, but > installation was a bit tricky. > I had to manually cd to the xlators/mount/fuse directory to install > the mount.glusterfs pieces. > so it makes me wonder what other pieces aren't installed.. but I'm > able to now mount a filesystem via fstab and things seem to be > plugging along > > I did, however, have the same problems you did with the rpmbuild. > > so, the software does seem to compile and install, but somethings odd > about the rpm build? :( > > what're your thoughts about the gluster-fuse ? should I install that > too or just leave things alone > what value does it bring?The solution for building the 1.30.10 tarball directly via rpmbuild on FC9 is to remove the "-D_FORTIFY_SOURCE=2" option from the RPM default macros. This is accomplished by editing the "/usr/lib/rpm/redhat/macros", and modifying the "%__global_cflags" line. After that, it compiles and builds the RPMs cleanly. I didn't have any other problems with objects not being installed properly - after installing the newly-built RPM on my servers and clients (all FC9), i had an AFR cluster set up and functional in about 15 minutes, without jumping through any additional hoops in this regard. The only odd thing that i did was to install the FC9 Fuse packages via Yum first, then i "upgraded" to the Gluster fuse packages (also built by me on FC9) after the fact. This seemed to work quite nicely. :) -- Daniel Maher <dma AT witbe DOT net>