I am trying to install AGE on my system running macOS 12.6.3 using this guide. I am getting an error on the step I try to make PG_CONFIG=/path/to/postgres/bin/pg_config install
and am unsure how to get it fixed.
Here are the series of Terminal lines:
kenwoon@Kens-MacBook-Pro age-1.1.0-rc0 % make PG_CONFIG=/Users/kenwoon/Downloads/postgresql-12.14/src/bin/pg_config/pg_config install
gcc -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 -Wno-compound-token-split-by-macro -O2 -I.//src/include -I.//src/include/parser -I. -I./ -I/usr/local/pgsql/include/server -I/usr/local/pgsql/include/internal -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX13.1.sdk -c -o src/backend/age.o src/backend/age.c
gcc -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 -Wno-compound-token-split-by-macro -O2 -I.//src/include -I.//src/include/parser -I. -I./ -I/usr/local/pgsql/include/server -I/usr/local/pgsql/include/internal -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX13.1.sdk -c -o src/backend/catalog/ag_catalog.o src/backend/catalog/ag_catalog.c
gcc -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 -Wno-compound-token-split-by-macro -O2 -I.//src/include -I.//src/include/parser -I. -I./ -I/usr/local/pgsql/include/server -I/usr/local/pgsql/include/internal -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX13.1.sdk -c -o src/backend/catalog/ag_graph.o src/backend/catalog/ag_graph.c
src/backend/catalog/ag_graph.c:67:15: error: assigning to 'Oid' (aka 'unsigned int') from incompatible type 'void'
graph_oid = CatalogTupleInsert(ag_graph, tuple);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make: *** [src/backend/catalog/ag_graph.o] Error 1
6
Answers
Follow below steps to install age correctly on macbook pro m1 or any other mac:
(i) postgresql version 11/12 source code (ii) age source code
those two commend install postgresql.
thats the process.
In order to install the extension for PostgreSQL 12 you will need to checkout branch AGE_PG12.1.0_ALPHA and then run the installer
Try to install apache age with
postgresql 11
and use these flags for configuration:
This video is the good source to install apache age on macOS.
The issue is with the master branch of age, I think some development code was merged by mistake. To be absolutely sure that you are trying to install working age extension, use the release source code.
I faced the exact same situation while being on Linux where the ‘pg_config’ file was in subdirectory ‘pg_config’ of directory ‘src/bin’. This issue will be resolved if you install the postgresql server-side development files using the command :
Then download the tar file to install postgres which will be extracted to your current directory. (Note install postgres 11 instead of 12)
After this, install psql using the
./configure
command, I would recommend enabling the debugging flag. To read more on the flags, read the Doc.pwd
will install postgres in the current directory. You might need to look for the exact ./configure command for macOS.This should install postgreSQL to your system.
I hope it helps.
References
Blog
First create a dir
Download PostgreSQL 12.0
Install some dependencies
after that run these commands
configure
now install
go back
Now clone the age repo
Now configure apache_age
Database initialization:
Now we will initialize our database cluster.
set the path
Now start postgres