acl icon indicating copy to clipboard operation
acl copied to clipboard

Installation using pgxn fails on MacOS for PG 12

Open seletz opened this issue 4 years ago • 1 comments

Tried to install using pgxn install acl. This fails with the following error.

Am I missing something?

$ pgxn install acl
INFO: best version: acl 1.0.2
INFO: saving /var/folders/qq/hkfz9ql503b0k9k8vrj48n8w0000gn/T/tmpzm99e1k6/acl-1.0.2.zip
INFO: unpacking: /var/folders/qq/hkfz9ql503b0k9k8vrj48n8w0000gn/T/tmpzm99e1k6/acl-1.0.2.zip
INFO: building extension
clang -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -Wno-unused-command-line-argument -O2  -Wall -I. -I./ -I/usr/local/include/postgresql/server -I/usr/local/include/postgresql/internal -I/usr/local/Cellar/icu4c/67.1/include -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk -I/usr/local/opt/[email protected]/include -I/usr/local/opt/readline/include   -c -o acl.o acl.c
clang -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -Wno-unused-command-line-argument -O2  -Wall -I. -I./ -I/usr/local/include/postgresql/server -I/usr/local/include/postgresql/internal -I/usr/local/Cellar/icu4c/67.1/include -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk -I/usr/local/opt/[email protected]/include -I/usr/local/opt/readline/include   -c -o acl_oid.o acl_oid.c
acl_oid.c:66:12: error: static declaration of 'get_role_oid' follows non-static
      declaration
static Oid get_role_oid(const char *name, bool missing_ok);
           ^
/usr/local/include/postgresql/server/utils/acl.h:214:12: note: previous
      declaration is here
extern Oid      get_role_oid(const char *rolename, bool missing_ok);
                ^
acl_oid.c:390:5: error: static declaration of 'get_role_oid' follows non-static
      declaration
Oid get_role_oid(const char *name, bool missing_ok)
    ^
/usr/local/include/postgresql/server/utils/acl.h:214:12: note: previous
      declaration is here
extern Oid      get_role_oid(const char *rolename, bool missing_ok);
                ^
acl_oid.c:394:55: error: too few arguments provided to function-like macro
      invocation
        oid = GetSysCacheOid1(AUTHNAME, CStringGetDatum(name));
                                                             ^
/usr/local/include/postgresql/server/utils/syscache.h:192:9: note: macro
      'GetSysCacheOid1' defined here
#define GetSysCacheOid1(cacheId, oidcol, key1) \
        ^
acl_oid.c:394:8: error: use of undeclared identifier 'GetSysCacheOid1'; did you
      mean 'GetSysCacheOid'?
        oid = GetSysCacheOid1(AUTHNAME, CStringGetDatum(name));
              ^~~~~~~~~~~~~~~
              GetSysCacheOid
/usr/local/include/postgresql/server/utils/syscache.h:142:12: note:
      'GetSysCacheOid' declared here
extern Oid      GetSysCacheOid(int cacheId, AttrNumber oidcol,
                ^
acl_oid.c:394:6: warning: incompatible pointer to integer conversion assigning
      to 'Oid' (aka 'unsigned int') from 'Oid (int, AttrNumber, Datum, Datum,
      Datum, Datum)' (aka 'unsigned int (int, short, unsigned long, unsigned
      long, unsigned long, unsigned long)') [-Wint-conversion]
        oid = GetSysCacheOid1(AUTHNAME, CStringGetDatum(name));
            ^ ~~~~~~~~~~~~~~~
1 warning and 4 errors generated.
make: *** [acl_oid.o] Error 1
ERROR: command returned 2: make PG_CONFIG=/usr/local/bin/pg_config all

seletz avatar Jun 10 '20 16:06 seletz