Error compiling PostgreSQL 8.3 on Leopard: 'rl_completion_matches'
I'm currently setting up my development environment on my new Mac, and have got round to the database bit. As you probably know, PostgreSQL 8.3 was released a day or so ago, so I decided to grab that and compile it up.
All initially went well - I'd already installed MacPorts to get libxml2 and libxslt. I'm compiling PostgreSQL by hand (I'll need multiple installs of different versions for working on older software). I issued the configure:
./configure --prefix=/Users/dan/opt --with-python --with-libxml --with-libxslt
Then make - which failed with the following message:
gcc -no-cpp-precomp -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Winline
-Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -I.
-I../../../src/interfaces/libpq -I../../../src/bin/pg_dump
-I../../../src/include -I/opt/local/include/libxml2 -c -o tab-complete.o
tab-complete.c
tab-complete.c: In function 'psql_completion':
tab-complete.c:601: warning: implicit declaration of function 'rl_completion_matches'
tab-complete.c:601: warning: assignment makes pointer from integer without a cast
It seems that PostgreSQL doesn't get on with the GNU readline library that's installed. Fortunately, you can ask configure to prefer the BSD readline library:
./configure --prefix=/Users/dan/opt --with-python \
--with-libxml --with-libxslt --with-libedit-preferred
Rebuilding after this worked like a charm.
I've disabled comments for now due to spam problems - I'll turn them back on when I've fixed it!