[Gluster-users] Solaris 11 x86 Won't Compile

Ian Prideaux worzel at gmx.co.uk
Thu Jun 4 15:17:42 UTC 2015


Hi All,

I've tried 3.6.3 & 3.7.1 and I can't get either to compile (I've not yet
tried 3.5.4, I don't really want to be running software that's two
versions out-of-date).

I've done a clean install in a VM.
I've got all the updates from https://pkg.oracle.com/solaris/support/
I've installed gcc, flex & bison.
I've compiled & installed userspace-rcu-0.8.7.
I've set PKG_CONFIG_PATH=/usr/loca/lib/pkgconfig (because configure need
to be told where the urcu libraries were).
configure runs OK.

However gmake stops early with errors.

Both sets of errors look very different, and it looks like errors in the
source code.

Does anyone have any ideas how I can get this working? Alternatively
does anyone know how I can achieve similar results with Oracle Cluster 4.2?

Thanks.



3.6.3 says:

gmake  all-recursive
gmake[1]: Entering directory `/export/home/ian/glusterfs-3.6.3'
Making all in ./contrib/argp-standalone
gmake[2]: Entering directory
`/export/home/ian/glusterfs-3.6.3/contrib/argp-standalone'
gmake  all-recursive
gmake[3]: Entering directory
`/export/home/ian/glusterfs-3.6.3/contrib/argp-standalone'
Making all in .
gmake[4]: Entering directory
`/export/home/ian/glusterfs-3.6.3/contrib/argp-standalone'
gmake[4]: Leaving directory
`/export/home/ian/glusterfs-3.6.3/contrib/argp-standalone'
gmake[3]: Leaving directory
`/export/home/ian/glusterfs-3.6.3/contrib/argp-standalone'
gmake[2]: Leaving directory
`/export/home/ian/glusterfs-3.6.3/contrib/argp-standalone'
Making all in libglusterfs
gmake[2]: Entering directory `/export/home/ian/glusterfs-3.6.3/libglusterfs'
Making all in src
gmake[3]: Entering directory
`/export/home/ian/glusterfs-3.6.3/libglusterfs/src'
gmake  all-am
gmake[4]: Entering directory
`/export/home/ian/glusterfs-3.6.3/libglusterfs/src'
  CC     libglusterfs_la-mntent.lo
../../contrib/mount/mntent.c: In function ‘hasmntopt’:
../../contrib/mount/mntent.c:59:13: warning: variable ‘found’ set but
not used [-Wunused-but-set-variable]
         int found;
             ^
../../contrib/mount/mntent.c: In function ‘flags2opts’:
../../contrib/mount/mntent.c:102:39: error: ‘MNT_RDONLY’ undeclared
(first use in this function)
         res = concatopt(res, (flags & MNT_RDONLY) ? "ro" : "rw");
                                       ^
../../contrib/mount/mntent.c:102:39: note: each undeclared identifier is
reported only once for each function it appears in
../../contrib/mount/mntent.c:103:21: error: ‘MNT_SYNCHRONOUS’ undeclared
(first use in this function)
         if (flags & MNT_SYNCHRONOUS)    res = concatopt(res, "sync");
                     ^
../../contrib/mount/mntent.c:104:21: error: ‘MNT_NOEXEC’ undeclared
(first use in this function)
         if (flags & MNT_NOEXEC)         res = concatopt(res, "noexec");
                     ^
../../contrib/mount/mntent.c:105:21: error: ‘MNT_NOSUID’ undeclared
(first use in this function)
         if (flags & MNT_NOSUID)         res = concatopt(res, "nosuid");
                     ^
../../contrib/mount/mntent.c:107:21: error: ‘MNT_NODEV’ undeclared
(first use in this function)
         if (flags & MNT_NODEV)          res = concatopt(res, "nodev");
                     ^
../../contrib/mount/mntent.c:109:21: error: ‘MNT_UNION’ undeclared
(first use in this function)
         if (flags & MNT_UNION)          res = concatopt(res, "union");
                     ^
../../contrib/mount/mntent.c:110:21: error: ‘MNT_ASYNC’ undeclared
(first use in this function)
         if (flags & MNT_ASYNC)          res = concatopt(res, "async");
                     ^
../../contrib/mount/mntent.c:112:21: error: ‘MNT_NOATIME’ undeclared
(first use in this function)
         if (flags & MNT_NOATIME)        res = concatopt(res, "noatime");
                     ^
../../contrib/mount/mntent.c:114:21: error: ‘MNT_NOCLUSTERR’ undeclared
(first use in this function)
         if (flags & MNT_NOCLUSTERR)     res = concatopt(res, "noclusterr");
                     ^
../../contrib/mount/mntent.c:115:21: error: ‘MNT_NOCLUSTERW’ undeclared
(first use in this function)
         if (flags & MNT_NOCLUSTERW)     res = concatopt(res, "noclusterw");
                     ^
../../contrib/mount/mntent.c:116:21: error: ‘MNT_NOSYMFOLLOW’ undeclared
(first use in this function)
         if (flags & MNT_NOSYMFOLLOW)    res = concatopt(res,
"nosymfollow");
                     ^
../../contrib/mount/mntent.c:117:21: error: ‘MNT_SUIDDIR’ undeclared
(first use in this function)
         if (flags & MNT_SUIDDIR)        res = concatopt(res, "suiddir");
                     ^
../../contrib/mount/mntent.c: In function ‘statfs_to_mntent’:
../../contrib/mount/mntent.c:129:36: error: dereferencing pointer to
incomplete type
         _mntent.mnt_fsname = mntbuf->f_mntfromname;
                                    ^
../../contrib/mount/mntent.c:130:33: error: dereferencing pointer to
incomplete type
         _mntent.mnt_dir = mntbuf->f_mntonname;
                                 ^
../../contrib/mount/mntent.c:131:34: error: dereferencing pointer to
incomplete type
         _mntent.mnt_type = mntbuf->f_fstypename;
                                  ^
../../contrib/mount/mntent.c:136:25: error: dereferencing pointer to
incomplete type
         f_flags = mntbuf->f_flags;
                         ^
../../contrib/mount/mntent.c: In function ‘getmntent’:
../../contrib/mount/mntent.c:160:17: warning: implicit declaration of
function ‘getmntinfo’ [-Wimplicit-function-declaration]
                 mntsize = getmntinfo (&mntbuf, MNT_NOWAIT);
                 ^
../../contrib/mount/mntent.c:160:48: error: ‘MNT_NOWAIT’ undeclared
(first use in this function)
                 mntsize = getmntinfo (&mntbuf, MNT_NOWAIT);
                                                ^
../../contrib/mount/mntent.c:168:9: error: invalid use of undefined type
‘struct statfs’
         return (statfs_to_mntent (&mntbuf[pos]));
         ^
../../contrib/mount/mntent.c:168:42: error: dereferencing pointer to
incomplete type
         return (statfs_to_mntent (&mntbuf[pos]));
                                          ^
../../contrib/mount/mntent.c:169:1: warning: control reaches end of
non-void function [-Wreturn-type]
 }
 ^
gmake[4]: *** [libglusterfs_la-mntent.lo] Error 1
gmake[4]: Leaving directory
`/export/home/ian/glusterfs-3.6.3/libglusterfs/src'
gmake[3]: *** [all] Error 2
gmake[3]: Leaving directory
`/export/home/ian/glusterfs-3.6.3/libglusterfs/src'
gmake[2]: *** [all-recursive] Error 1
gmake[2]: Leaving directory `/export/home/ian/glusterfs-3.6.3/libglusterfs'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/export/home/ian/glusterfs-3.6.3'
gmake: *** [all] Error 2



3.7.1 says:

gmake  all-recursive
gmake[1]: Entering directory `/export/home/ian/glusterfs-3.7.1'
Making all in ./contrib/argp-standalone
gmake[2]: Entering directory
`/export/home/ian/glusterfs-3.7.1/contrib/argp-standalone'
gmake  all-recursive
gmake[3]: Entering directory
`/export/home/ian/glusterfs-3.7.1/contrib/argp-standalone'
Making all in .
gmake[4]: Entering directory
`/export/home/ian/glusterfs-3.7.1/contrib/argp-standalone'
gmake[4]: Leaving directory
`/export/home/ian/glusterfs-3.7.1/contrib/argp-standalone'
gmake[3]: Leaving directory
`/export/home/ian/glusterfs-3.7.1/contrib/argp-standalone'
gmake[2]: Leaving directory
`/export/home/ian/glusterfs-3.7.1/contrib/argp-standalone'
Making all in libglusterfs
gmake[2]: Entering directory `/export/home/ian/glusterfs-3.7.1/libglusterfs'
Making all in src
gmake[3]: Entering directory
`/export/home/ian/glusterfs-3.7.1/libglusterfs/src'
gmake  all-am
gmake[4]: Entering directory
`/export/home/ian/glusterfs-3.7.1/libglusterfs/src'
  CC     libglusterfs_la-common-utils.lo
In file included from xlator.h:27:0,
                 from stack.h:33,
                 from common-utils.c:48:
compat.h:274:0: warning: "lgetxattr" redefined [enabled by default]
 #define lgetxattr(path, key, value, size)
solaris_getxattr(path,key,value,size)
 ^
In file included from xlator.h:27:0,
                 from stack.h:33,
                 from common-utils.c:48:
compat.h:74:0: note: this is the location of the previous definition
 #define lgetxattr(path, key, value, size) getxattr(path,key,value,size)
 ^
common-utils.c: In function ‘gf_canonicalize_path’:
common-utils.c:2659:9: error: implicit declaration of function ‘bzero’
[-Werror=implicit-function-declaration]
         bzero (path, strlen(path));
         ^
common-utils.c:2659:9: warning: incompatible implicit declaration of
built-in function ‘bzero’ [enabled by default]
common-utils.c: In function ‘gf_interface_search’:
common-utils.c:3005:17: error: implicit declaration of function ‘index’
[-Werror=implicit-function-declaration]
                 pct = index(host,'%');
                 ^
common-utils.c:3005:23: warning: incompatible implicit declaration of
built-in function ‘index’ [enabled by default]
                 pct = index(host,'%');
                       ^
cc1: some warnings being treated as errors
gmake[4]: *** [libglusterfs_la-common-utils.lo] Error 1
gmake[4]: Leaving directory
`/export/home/ian/glusterfs-3.7.1/libglusterfs/src'
gmake[3]: *** [all] Error 2
gmake[3]: Leaving directory
`/export/home/ian/glusterfs-3.7.1/libglusterfs/src'
gmake[2]: *** [all-recursive] Error 1
gmake[2]: Leaving directory `/export/home/ian/glusterfs-3.7.1/libglusterfs'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/export/home/ian/glusterfs-3.7.1'
gmake: *** [all] Error 2


-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0x35B682EA.asc
Type: application/pgp-keys
Size: 3132 bytes
Desc: not available
URL: <http://www.gluster.org/pipermail/gluster-users/attachments/20150604/49f529f8/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: worzel.vcf
Type: text/x-vcard
Size: 98 bytes
Desc: not available
URL: <http://www.gluster.org/pipermail/gluster-users/attachments/20150604/49f529f8/attachment.vcf>


More information about the Gluster-users mailing list