6 Dec 2011

Setup Linux for PostgreSQL Development (from Git)

This very brief article is a primer for those wanting to start developing on PostgreSQL:

Getting your Linux (Ubuntu / CentOS) machine ready for (PostgreSQL related) development

Ubuntu: sudo apt-get install build-essential git libxml2-dev libxslt-dev autotools-dev automake libreadline-dev zlib1g-dev bison flex 

CentOS: sudo yum install git libxml2-devel libxslt-devel automake autoconf readline-devel  zlib-devel bison flex gcc 

Get Postgresql source (from Git)

  • git clone git://git.postgresql.org/git/postgresql.git
    • Would take some time (~1-15 minutes) but YMMV
  • ./configure --prefix=/opt/postgres/master --enable-depend --enable-cassert 
  • make -j4
  • sudo make install
  • cd contrib
  • make -j4
  • sudo make install
  • /opt/postgres/master/bin/initdb -D /opt/postgres/master/data
  • /opt/postgres/master/bin/pg_ctl -D /opt/postgres/master/data -l logfile start
If you want to know more about hacking on PostgreSQL in general, you could always refer to the (very) detailed PostgreSQL Developer FAQ:

Happy Hacking :) ! 


git checkout REL9_4_STABLE && ./configure --prefix=/opt/postgres/94 --enable-depend && make -j4 && sudo make install && cd contrib && make -j4 && sudo make install && cd ..

git checkout REL9_5_STABLE && ./configure --prefix=/opt/postgres/95 --enable-depend && make -j4 && sudo make install && cd contrib && make -j4 && sudo make install && cd ..

git checkout REL9_6_STABLE && ./configure --prefix=/opt/postgres/96 --enable-depend && make -j4 && sudo make install && cd contrib && make -j4 && sudo make install && cd ..

git checkout REL_10_STABLE && ./configure --prefix=/opt/postgres/10 --enable-depend && make -j4 && sudo make install && cd contrib && make -j4 && sudo make install && cd ..

git checkout REL_11_STABLE && ./configure --prefix=/opt/postgres/11 --enable-depend && make -j4 && sudo make install && cd contrib && make -j4 && sudo make install && cd ..

git checkout REL_12_STABLE && ./configure --prefix=/opt/postgres/12 --enable-depend && make -j4 && sudo make install && cd contrib && make -j4 && sudo make install && cd ..


No comments: