Martinus Ady H. BloG

Human Knowledge Belongs To The World

Installing PgAdmin3 1.10.1 on Slackware 13.0

| Comments

Akhir-nya berhasil juga melakukan installasi PgAdmin3-1.10.1 di Slackware 13.0 saya :) , tulisan kali ini merupakan jawaban untuk pertanyaan saya sendiri yang kemarin belum sempat terjawab pada milis id-slackware@googlegroups.com dengan subyek Installing pgadmin error di proses make :D Nah karena kemarin belum ada yang jawab, menurut asumsi saya pribadi kemungkinan teman-teman di milis juga belum pernah mengalami hal yang saya alamin jadinya bingung mau menjawab apaan :D . Dan asumsi kedua saya yaitu, saya yang kurang teliti dalam hal mengatur urusan dependencies yang diperlukan oleh pgadmin-nya :) Setelah ditelusuri lebih lanjut, masalah utama yaitu ternyata saya sendiri yang kurang teliti membaca halaman INSTALL yang terdapat dalam direktori source code pgadmin :D , kenapa saya sempat melewatkan file INSTALL tersebut ? Nah kasus yang terjadi pada saya yaitu adalah, saya terlalu percaya oleh SlackBuild Script bawaan dari SBo :D (Maklum biasanya saya tidak pernah mengalami masalah sama sekali dengan SlackBuild Script bawaan SBo :D ) Hmm… mantap kan Slackware :) , untuk teman-teman pengguna distribusi GNU/Linux lain mungkin sudah bisa bernyaman-nyaman dengan mengetikkan 1 baris perintah untuk menginstall pgadmin beserta dependencies-nya. Tapi di Slackware ….. hmm… mari kita lihat apa yang harus kita lakukan agar Slackware kita bisa seperti distribusi GNU/Linux yang lain :) (Ini yang membuat saya tetep keukeuh sama Slackware, ada aja yang perlu di ****) :)

Sekedar catatan untuk teman-teman, semua versi aplikasi maupun library pada tulisan ini merupakan versi yang terbaru ketika artikel ini mulai ditulis. Dan mungkin langkah-langkah pada tulisan ini sudah tidak relevan lagi jika versi library maupun aplikasi yang teman-teman gunakan sudah berbeda jauh, jadi SAYA TIDAK MENJAMIN apa yang saya tulis disini bisa berjalan dengan mulus pada sistem teman-teman. Sedangkan spesifikasi sistem yang saya gunakan pada tulisan kali ini yaitu adalah sebagai berikut :

  1. Slackware 13.0 versi stable (saya belum sanggup mengikuti perkembangan Slackware current :( )

  2. PostgreSQL 8.4.2

  3. PgAdmin3 v1.10.1

  4. wxPython 2.8.10.1

Ok konfigurasi sistem yang teman-teman gunakan sama dan mengalami masalah yang sama juga ? Kalau iya, mari kita lanjutkan :D Nah untuk mulai menginstall pgadmin pada Slackware, yang kita perlukan pasti-nya installer pgadmin itu sendiri kan. Karena saya lebih suka melakukan proses installasi dari source, maka pilihan yang saya pakai yaitu mendownload SlackBuild Script untuk pgadmin yang bisa kita download pada halaman PgAdmin SBo. Pada halaman download tersebut juga terdapat catatan yang kurang lebih seperti berikut :

pgAdmin requires wxPython PostgreSQL (available at slackbuilds.org).

Maintained by: Iskar Enev Approved by: dsomero

Nah untuk teman-teman yang belum menginstall package wxPython, downloadlah dahulu semua source code wxPython beserta SlackBuild Script-nya tapi jangan sampai melakukan PROSES INSTALLASI wxPython dahulu. Sedangkan untuk teman-teman yang sudah terlanjur menginstall packages wxPython yang berasal dari SBo, maka hapuslah dahulu packages wxPython yang sudah terinstall dengan menggunakan perintah removepkg wxPython-2.8.10.1-i486-1_SBo. Jika teman-teman tidak menghapus packages wxPython yang berasal dari SBo terlebih dahulu, dan kemudian mencoba untuk langsung melakukan proses kompilasi pada source code pgadmin. Maka bisa dipastikan, teman-teman pasti akan mendapatkan pesan error seperti dibawah ini ketika proses make sedang berjalan: [plain] ./pgAdmin3.cpp:27:24: error: wx/ogl/ogl.h: No such file or directory In file included from /usr/include/libxml2/libxml/xmlreader.h:13, from ../pgadmin/include/utils/favourites.h:18, from ../pgadmin/include/frm/frmQuery.h:19, from ./pgAdmin3.cpp:55: /usr/include/libxml2/libxml/xmlversion.h:429:1: warning: “ATTRIBUTE_PRINTF” redefined In file included from /usr/include/wx-2.8/wx/wx.h:15, from ../pgadmin/include/pgAdmin3.h:16, from ./pgAdmin3.cpp:13: /usr/include/wx-2.8/wx/defs.h:501:1: warning: this is the location of the previous definition ./pgAdmin3.cpp: In member function ‘virtual bool pgAdmin3::OnInit()’: ./pgAdmin3.cpp:383: error: ‘wxOGLInitialize’ was not declared in this scope make[2]: [pgAdmin3.o] Error 1 make[2]: Leaving directory /tmp/SBo/pgadmin3-1.10.1/pgadmin' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory/tmp/SBo/pgadmin3-1.10.1' make: [all] Error 2 root@martinusadyh:[/media/data/SLACKBUILDS/pgadmin]# [/plain]

Setelah googling sebentar dengan menggunakan keyword ./pgAdmin3.cpp:383: error: ‘wxOGLInitialize’ was not declared in this scope, saya menemukan link yang mengarah ke milis pgadmin-hackers dan mendapatkan pencerahan pada email balasan yang isinya seperti berikut :

Hi,

Le 19/02/2010 20:35, Haiyan Chi a écrit :

[…] I am installing pgadmin3-1.10.1 from source. I am at linux.

The configuration passed:


PostgreSQL directory: […] When I tried to compile, got the following error: […] … [show rest of quote]

You probably forgot to compile the wxWidgets contribs. Go in the contrib directory and “make && make install”.

– Guillaume. http://www.postgresqlfr.org http://dalibo.com

Waaaks…. harus menginstall juga direktori contrib pada packages wxWidgets ??? Ok sekarang mari kita bongkar source code pgadmin dan coba buka file INSTALL dan hasil-nya adalah seperti dibawah ini :

....
3) Unpack the wxGTK tarball to a convenient location, and build and install it
   as follows:

     cd /path/to/wxGTK/source/
     ./configure --with-gtk --enable-gtk2 --enable-unicode
     make
     sudo make install

     # Install wxWidgets contrib modules.
     cd contrib/
     make
     sudo make install

   A script is included in the pgAdmin source tarball 
   (xtra/wx-build/build-wxgtk) which will build and install wxWidgets in each 
   combination of shared/static/debug/release builds for you.
....

Karena packages wxGTK yang terdapat pada SBo sudah di include pada packages wxPython, maka sepertinya masalah terdapat pada packages wxPython-nya. Dari file INSTALL dan info dari milis pgadmin-hackers diatas, kita sudah mendapatkan informasi yang jelas yaitu kita harus MENGINSTALL JUGA MODUL contrib/ yang terdapat pada distribusi wxWidgets atau wxPython kita. Sekarang coba ekstrak file wxPython-src-2.8.10.1.tar.bz2 dan cek apakah direktori contrib/ ada atau tidak (seharusnya sih kita menemukan direktori contrib/ pada distribusi wxPython), dan kemudian cek juga file wxPython.SlackBuild dan lihat pada baris yang menjalankan perintah make dan make install. Dan inilah yang saya temukan pada file wxPython.SlackBuild yang di download dari SBo :

#Additional stuff needed by wxPython
make -C contrib/src/gizmos
make -C contrib/src/stc

make install DESTDIR=$PKG
make -C contrib/src/gizmos install DESTDIR=$PKG
make -C contrib/src/stc install DESTDIR=$PKG

Nah pada script diatas bisa kita lihat, bahwa ternyata tidak semua direktori contrib/ di install oleh SlackBuild Script wxPython bawaan dari SBo. Agar proses make pgadmin bisa berjalan dengan mulus, sekarang modifikasilah file wxPython.SlackBuild diatas menjadi seperti dibawah ini :

#Additional stuff needed by wxPython
# make -C contrib/src/gizmos
# make -C contrib/src/stc

make -C contrib/

make install DESTDIR=$PKG
# make -C contrib/src/gizmos install DESTDIR=$PKG
# make -C contrib/src/stc install DESTDIR=$PKG
make -C contrib/ install DESTDIR=$PKG

Setelah selesai melakukan proses modifikasi diatas, sekarang coba build lagi binary packages untuk wxPython dan install dengan menggunakan perintah installpkg /tmp/wxPython-2.8.10.1-i486-1_SBo.tgz. Jika packages wxPython hasil modifikasi kita telah terinstall, sekarang jalankan-lah SlackBuild Script pgadmin-nya. Dan jika pada proses build packages pgadmin tidak terdapat error, kita bisa mulai menginstall dengan mengetikkan perintah installpkg /tmp/pgadmin3-1.10.1-i486-1_SBo.tgz :) Jika proses installasi pgadmin sudah selesai, sekarang coba jalankan pgadmin-nya dengan mengetikkan perintah pgadmin3 pada terminal dan hasil akhir yang akan kita dapatkan adalah seperti gambar-gambar dibawah ini :

TampilanPgAdmin
PgAdmin3 Menampilkan Daftar Tabel

PgAdminQueryTool
Tampilan Query Designer PgAdmin3

Waaaaah… mangstab kan, bagaimana menurut pendapat teman-teman keren tidak ?? :D :) Jadi lebih gampang bukan belajar PostgreSQL menggunakan pgadmin ? Apalagi pgadmin ini jalan di Slackware kita yang tercinta :D :)

Akhir kata, happy slacking’s guys :) Link-link terkait :

  1. Installing PostgreSQL 8.4.2 On Slackware 13.0

  2. Beberapa Persamaan MySQL dan PostgreSQL

  3. PostgreSQL

  4. pgadmin

  5. SlackBuild.org

  6. Tempat Diskusi Slacker’s Indonesia

Beri Komentar Lewat Facebook:

Beri Komentar Lewat Disqus: