Note for English Readers

If I write the articles in Indonesian, I will write a summary in English so that you can read my articles too. After you read the summary and you feel that you need more information about that, please do not hesitate to contact me via e-mail that can be found in my profile.

Thank you for reading my blogs.

Wednesday, October 14, 2009

USBasp

USBasp adalah sebuah USB In-circuit programmer untuk mikrokontroler AVR yang didesain oleh Thomas Fischl. Penggunaannya cukup mudah dan dapat dijalankan pada platform Linux, Mac OS X, maupun Windows. USBasp dapat men-download firmware ke internal flash dari mikrokontroler AVR yang menjadi targetnya dengan kecepatan maksimal 5 kB/s dan tersedia jumper untuk men-set USBasp agar support mikrokontroler AVR target yang mempunyai low clock speed (< 1.5MHz); biasanya, jika kita membeli mikrokontroler AVR yang baru, by default, kebanyakan AVR tersebut di-set menggunakan internal clock frekuensi 1MHz (untuk mengubah setting clock ini, Anda harus memprogram LFUSE, HFUSE, dan/atau EFUSE; silakan lihat datasheet dari mikrokontroler AVR yang digunakan untuk lebih rincinya).

Berdasarkan skema rangkaian dari Thomas Fischl, saya membuat artwork PCB untuk USBasp yang nantinya saya, beserta Laboratorium Otomasi dan Sistem Embedded, Jurusan Teknik Elektro, Universitas Surabaya, gunakan untuk men-download firmware ke internal flash dari mikrokontroler AVR, seperti untuk praktikum mata kuliah Mikrokontroler dan proyek pembuatan intelligent robot. (hardware robot yang digunakan pada Ubaya Robosoccer Competition 2009 dikembangkan menggunakan mikrokontroler AVR). Program yang saya gunakan untuk menggambar ulang skema rangkaian serta membuat artwork PCB-nya adalah gEDA dan pcb, suatu GPL'ed Electronic Design Automation Suite yang sangat layak diandalkan, dan terlebih lagi (dan yang paling penting), program ini berjalan di atas platform Linux. Gambar berikut ini menunjukkan tampilan gEDA dan pcb untuk pembuatan USBasp.



Setelah dicetak dan disolder seluruh komponennya, serta, firmware USBasp telah di-download-kan ke ATmega8 yang digunakan pada USBasp ini, maka hasil akhirnya dapat dilihat pada gambar berikut ini:



USBasp in action menggunakan AVRDude sebagai ISP Software:



Jika Anda tertarik untuk memperoleh USBasp yang siap pakai atau masih dalam bentuk belum disolder, silakan menghubungi saya via e-mail untuk informasi lebih lanjut. Alamat e-mail saya dapat dilihat pada Profile saya.

Solusi jika USBasp tidak dapat digunakan oleh user biasa di Linux
Jika pada saat Anda menggunakan USBasp sebagai user biasa di Linux, ternyata USBasp Anda tidak dapat digunakan, tetapi saat Anda sebagai root atau superuser, ternyata USBasp tersebut dapat digunakan, berarti Anda sebagai user biasa tidak mempunyai hak akses ke USBasp. Solusi untuk masalah ini cukup mudah. Anda harus membuat file baru dengan nama 99-usbasp-rules pada direktori /lib/udev/rules.d yang isinya sebagai berikut:

# allow users to claim the device
ACTION=="add" SUBSYSTEM=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", MODE="0664", GROUP="plugdev"

untuk idVendor dan idProduct dapat Anda ketahui melalui command: lsusb (dengan catatan Anda sebagai root atau superuser dan USBasp Anda terhubung ke PC/Laptop). Setelah file tersebut di-save, re-plug USBasp Anda dan Anda akan mempunyai hak akses ke USBasp. Jangan lupa, pastikan user biasa tersebut telah menjadi group member dari plugdev.

Referensi:


Summary:
This article shows USBasp, a USB in-circuit programmer for Atmel AVR Controllers, designed by Thomas Fischl. I have created PCB artwork for USBasp using gEDA and pcb, a GPL'ed Electronic Design Automation Suite that is running on Linux, then have applied it to all activities/projects related to AVR microcontroller in my laboratory,  such as laboratory session for my students and intelligent robot developments.

If your USBasp cannot be used by user, but it can be detected and used by root, you have to add an udev rule in directory /lib/udev/rules.d through these steps (as a superuser or root):
  • create new file: 99-usbasp-rules 
  • add these lines below to the file (you can obtain idVendor and idProduct by lsusb command as root and make sure your USBasp connected to your PC/laptop):
ACTION=="add" SUBSYSTEM=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", MODE="0664", GROUP="plugdev"
  • save the file
  • copy it to /lib/udev/rules.d (note: you must be a root to do this)
  • re-plug your USBasp
Now, you can use your USBasp in user mode.

Monday, October 12, 2009

Kompilasi dan Instalasi OpenCV 2.0.0 pada Linux -- Compiling & Installing OpenCV 2.0.0 on Linux --

Seperti yang telah saya janjikan pada tulisan sebelumnya, sekarang saya ingin membagikan pengalaman saya saat melakukan kompilasi dan instalasi OpenCV 2.0.0 di laptop saya. Distro Linux yang saya gunakan adalah Slackware64 13.0, tapi, menurut saya, pengalaman saya ini merupakan pengalaman untuk Linux secara umum, tidak tergantung distro. OK, kita mulai ...

Langkah pertama, sudah pasti, kita harus memastikan semua dependencies dari OpenCV 2.0.0 telah terinstall dengan baik pada PC/Laptop kita. Biasanya, untuk OpenCV, saya inginnya yang lengkap. Ada beberapa program yang merupakan dependencies dari OpenCV 2.0.0 yang "harus ada" (menurut kebutuhan dan mau saya), antara lain: xinelib, ffmpeg, libdc1394, v4l, swig, python, libjpeg, zlib, libpng, libtiff, libjasper. Untuk Slackware/Slackware64 13.0, beberapa dependencies seperti xinelib, swig, python, libjpeg, zlib, libpng, libtiff, dan libjasper telah terinstall; saya hanya perlu menambahkan ffmpeg, libdc1394, dan v4l. Mengenai cara mencari dan menambahkan dependencies, silakan dibaca pada manual distro masing-masing.

Setelah semua dependencies sudah terinstall, langkah kedua adalah kompilasi OpenCV 2.0.0. Untuk versi 2.0.0 ini, ada 2 cara kompilasi, yang pertama, cara klasik, menggunakan configure dan make; cara yang kedua adalah menggunakan cmake dan make. Saya telah mencoba kedua cara tersebut. Untuk yang menggunakan cmake, sebenarnya cara ini lebih mudah dan user-friendly (sejauh yang saya rasakan) tapi saat saya coba, setelah 85% proses kompilasi, muncul error.

# cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON -D BUILD_LATEX_DOCS=ON ..

Jika tidak ada error, lalu:

# make

Error yang muncul:

...
Linking CXX shared library ../../lib/libcvaux.so
[ 84%] Built target cvaux
Scanning dependencies of target cvhaartraining
[ 84%] Building CXX object apps/haartraining/CMakeFiles/cvhaartraining.dir/cvboost.o
[ 84%] Building CXX object apps/haartraining/CMakeFiles/cvhaartraining.dir/cvcommon.o
[ 85%] Building CXX object apps/haartraining/CMakeFiles/cvhaartraining.dir/cvhaarclassifier.o
[ 85%] Building CXX object apps/haartraining/CMakeFiles/cvhaartraining.dir/cvhaartraining.o
[ 85%] Building CXX object apps/haartraining/CMakeFiles/cvhaartraining.dir/cvsamples.o
Linking CXX static library ../../lib/libcvhaartraining.a
[ 85%] Built target cvhaartraining
Scanning dependencies of target createsamples
[ 85%] Building CXX object apps/haartraining/CMakeFiles/createsamples.dir/createsamples.o
Linking CXX executable ../../bin/opencv_createsamples
../../lib/libhighgui.so.2.0.0: undefined reference to `cvCreateCameraCapture_V4L(int)'
collect2: ld returned 1 exit status
make[2]: *** [bin/opencv_createsamples] Error 1
make[1]: *** [apps/haartraining/CMakeFiles/createsamples.dir/all] Error 2
make: *** [all] Error 2

Sampai sekarang, saya masih belum tahu sebabnya. Saya telah menanyakan ke forum OpenCV, belum ada jawaban, mungkin tidak ada yang mengalaminya, karena jika saya amati dari respon anggota forum, mayoritas bukan pengguna Linux.
Akhirnya, saya pakai cara klasik:

$ ./configure --with-xine --with-ffmpeg --with-1394libs --with-v4l --with-gtk --without-quicktime --enable-sse --with-swig --with-python --with-gthread

Jika tidak ada error, lalu:

$ make

Kompilasi sukses.

Langkah ketiga, install hasil kompilasi tersebut menggunakan make install. Pastikan Anda telah menjadi root user atau superuser saat menginstall:

# make install

Langkah terakhir adalah mencoba OpenCV 2.0.0. Kebetulan, 2 tahun lalu, saya pernah menulis di blog ini tentang cara membuat program dengan library OpenCV pada Linux. Program-program tersebut saya coba untuk di-compile ulang menggunakan library OpenCV versi 2.0.0 dan hasil kompilasinya dapat berjalan mulus pada laptop saya. Sekedar mengingatkan, cara kompilasi menggunakan library OpenCV adalah sebagai berikut:

$ g++ -Wall [nama_file].cpp -o [nama_file_output] `pkg-config opencv --cflags --libs`

Contoh:

$ g++ -Wall trial1.cpp -o trial1 `pkg-config opencv --cflags --libs`


Referensi:


Summary:
This article describes about compiling and installing OpenCV on Linux in general, not depending on Linux distros. All writings of this article are based on reference at OpenCV wiki site that you can find the link on Referensi. There are 4 steps that I've been worked that I will discuss.

First, make sure all dependencies of OpenCV have been installed properly. By my experience, I need xinelib, ffmpeg, libdc1394, v4l, swig, python, libjpeg, zlib, libpng, libtiff, and libjasper. For how to add dependencies, please consult to each distro's manual.

Second, compiling OpenCV. There are 2 methods, classical method (configure then make) and cmake method. When I tried cmake method using this command:

# cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON -D BUILD_LATEX_DOCS=ON ..

I found an error when the process has been 85% finished.

...
Linking CXX shared library ../../lib/libcvaux.so
[ 84%] Built target cvaux
Scanning dependencies of target cvhaartraining
[ 84%] Building CXX object apps/haartraining/CMakeFiles/cvhaartraining.dir/cvboost.o
[ 84%] Building CXX object apps/haartraining/CMakeFiles/cvhaartraining.dir/cvcommon.o
[ 85%] Building CXX object apps/haartraining/CMakeFiles/cvhaartraining.dir/cvhaarclassifier.o
[ 85%] Building CXX object apps/haartraining/CMakeFiles/cvhaartraining.dir/cvhaartraining.o
[ 85%] Building CXX object apps/haartraining/CMakeFiles/cvhaartraining.dir/cvsamples.o
Linking CXX static library ../../lib/libcvhaartraining.a
[ 85%] Built target cvhaartraining
Scanning dependencies of target createsamples
[ 85%] Building CXX object apps/haartraining/CMakeFiles/createsamples.dir/createsamples.o
Linking CXX executable ../../bin/opencv_createsamples
../../lib/libhighgui.so.2.0.0: undefined reference to `cvCreateCameraCapture_V4L(int)'
collect2: ld returned 1 exit status
make[2]: *** [bin/opencv_createsamples] Error 1
make[1]: *** [apps/haartraining/CMakeFiles/createsamples.dir/all] Error 2
make: *** [all] Error 2

Until now, I still don't know how to solve it. There is no response from OpenCV forum, perhaps, nobody got this error when compiling OpenCV 2.0.0.

I switched the method using classical method:

$ ./configure --with-xine --with-ffmpeg --with-1394libs --with-v4l --with-gtk --without-quicktime --enable-sse --with-swig --with-python --with-gthread

If no error, lalu:

$ make

I found no error until compilation finished.

Third, install the compiled OpenCV using (note: make sure you have been a root user or superuser when execute this command):

# make install

The last step is try to make a simple program that needs OpenCV library then compile it using:

$ g++ -Wall [input_file].cpp -o [output_file] `pkg-config opencv --cflags --libs`

Thursday, October 8, 2009

OpenCV 2.0.0 telah dirilis

-- Sorry, I wrote this article in Indonesian only. For information related to OpenCV 2.0.0 in English, please go to the OpenCV Wiki Site (see Referensi for the link) --

OpenCV merupakan suatu library kumpulan fungsi-fungsi pemrograman yang khusus ditujukan untuk real-time computer vision. Aplikasinya cukup luas, antara lain: Human-Computer Interaction (HCI), Object Identification, Segmentation and Recognition, Face Recognition, Gesture Recognition, Motion Tracking, Ego Motion, Motion Understanding, Structure From Motion (SFM), Stereo and Multi-Camera Calibration and Depth Computation, Mobile Robotics.

Bagi yang berkecimpung dalam bidang computer vision, terutama real-time computer vision, ada kabar yang menggembirakan, yaitu, pada tanggal 30 Sept. 2009, telah dirilis OpenCV versi 2.0.0. Beberapa penambahan fitur pada versi 2.0.0 ini bila dibandingkan dengan OpenCV 1.1pre1 antara lain:
  • bug fixed.
  • The brand-new C++ interface untuk sebagian besar fungsi pada OpenCV (cxcore, cv, highgui).
  • Build system menggunakan CMake.
  • Perbaikan pada fungsi-fungsi aljabar linier.
  • Support bicubic and Lanczos interpolation.
  • Support stereo camera (Linux).
  • Image dapat dikompress dan di-dekompress langsung pada buffer memory
  • Beberapa fungsi dasar dan operasi image processing (seperti operasi aritmatika, geometric image transformations, filtering, dll) telah mempunyai optimasi SSE2 sehingga fungsi-fungsi tersebut akan bekerja beberapa kali lebih cepat daripada versi sebelumnya.
  • dll.
Untuk lebih detilnya, silakan menuju ke link yang tercantum pada bagian referensi.

Instalasi OpenCV 2.0.0 for Linux dengan cara meng-compile sendiri dari source akan saya bahas kemudian. So ... be patient! :))

Referensi:

Friday, October 2, 2009

Menambahkan Multilib pada Slackware64 -- Enabling multilib on Slackware64 --

Seperti yang telah kita ketahui, Slackware 13.0 yang dirilis pada akhir Agustus 2009 lalu mempunyai 2 versi, yaitu: versi 32-bit dan versi 64-bit, sehingga sekarang ini, sudah ada 3 official port untuk slackware, yaitu: 32-bit port, 64-bit port, dan ARM-port. Slackware yang ARM port ditujukan untuk mesin yang dijalankan dengan prosesor berarsitektur ARM. Untuk 32-bit port, bisa dikatakan versi ini adalah versi normal release dari Slackware selama ini untuk komputasi 32-bit. Official port terbaru dari Slackware adalah 64-bit port, diberi nama Slackware64. Versi ini ditujukan untuk komputasi 64-bit yang sekarang ini sudah di-support oleh prosesor-prosesor keluaran Intel dan AMD yang terbaru. Untuk mengetahui apakah prosesor pada PC/laptop kita telah support komputasi 64-bit, silakan Anda membaca artikel tentang “Penggunaan cpuinfo untuk mengetahui apakah prosesor kita support komputasi 64-bit”.

Pada tutorial kali ini, akan dibahas mengenai penambahan multilib pada Slackware64 karena Slackware64 hanya menyediakan library untuk komputasi 64-bit sehingga Slackware64 tidak dapat menjalankan program-program yang hanya support komputasi 32-bit, seperti wine, skype, adobe reader, dan grub, serta tidak dapat meng-compile source code untuk komputasi 32-bit. Jadi, dengan kata lain, jika kita menghendaki Slackware64 yang terinstall pada PC/laptop kita dapat meng-compile dan menjalankan program-program untuk komputasi 32-bit, maka kita harus menyediakan library 32-bit yang dibutuhkan oleh program-program tersebut. Penambahan library 32-bit ini akan membuat Slackware64 kita mempunyai 2 jenis library, 32-bit dan 64-bit, oleh karena itu, kondisi ini disebut multilib, bentuk singkat dari multi-library. Untuk membuat Slackware64 kita menjadi multilib, caranya sangat mudah karena pada dasarnya, Slackware64 sudah multilib-ready, kita hanya tinggal meng-install-kan 32-bit libraries yang dibutuhkan. Eric Hameleers, sebagai pembuat dan maintainer Slackware64, telah menuliskan caranya pada http://alien.slackbook.org/dokuwiki/doku.php?id=slackware:multilib. Tutorial ini akan membahas langkah-langkah yang telah dilakukan penulis untuk me-multilib-kan Slackware64 berdasarkan panduan dari Eric.

Pertama kali, Anda harus men-download paket-paket gcc dan glibc yang versi multilib serta compat32-tools dari website Eric (http://connie.slackware.com/~alien/multilib/). Paket-paket tersebut, pada saat tutorial ini ditulis, adalah sebagai berikut:

  • gcc-4.3.3_multilib-x86_64-4alien.txz

  • gcc-g++-4.3.3_multilib-x86_64-4alien.txz
  • gcc-gfortran-4.3.3_multilib-x86_64-4alien.txz
  • gcc-gnat-4.3.3_multilib-x86_64-4alien.txz
  • gcc-java-4.3.3_multilib-x86_64-4alien.txz
  • gcc-objc-4.3.3_multilib-x86_64-4alien.txz
  • glibc-2.9_multilib-x86_64-3alien.txz
  • glibc-i18n-2.9_multilib-x86_64-3alien.txz
  • glibc-profile-2.9_multilib-x86_64-3alien.txz
  • glibc-solibs-2.9_multilib-x86_64-3alien.txz
  • glibc-zoneinfo-2.9_multilib-noarch-3alien.txz
  • compat32-tools-1.0-noarch-12alien.tgz

File-file tersebut disimpan dalam satu directory, lalu jalankan command berikut:

# upgradepkg --reinstall --install-new *.t?z

Selanjutnya, Anda dapat men-download paket-paket compat32 dari website Eric (http://connie.slackware.com/~alien/multilib/slackware64-compat32/), dari directori a-compat32, ap-compat32, d-compat32, l-compat32, n-compat32, dan x-compat32. File-file tersebut merupakan paket slackware 32-bit yang sudah dikonversi menggunakan script yang ada pada compat32-tools, totalnya sekitar 60MB. Tentang cara konversi, bisa dibaca pada website Eric yang tertulis pada bagian referensi di akhir tutorial ini. Kemudian, jalankan command berikut untuk menginstall semua paket tersebut:

# installpkg *-compat32/*.t?z

Sebagai catatan, waktu penulis melakukan instalasi paket-paket ini, muncul pesan error saat instalasi pango-compat32, yaitu:

Executing install script for pango-compat32-1.22.4-x86_64-4.txz.

    /usr/bin/pango-querymodules-32: error while loading shared libraries: libXft.so.2: cannot open shared object file: No such file or directory

Jika Anda mengalami error ini, biarkan saja, nanti setelah semua paket terinstall, Anda hanya perlu mengulangi installasi pango-compat32:

# upgradepkg --reinstall pango-compat32-1.22.4-x86_64-4.txz

That's it all. Slackware64 Anda telah benar-benar multilib. Anda bisa menjalankan aplikasi 32-bit dan meng-compile source yang hanya dapat dijalankan pada slackware 32-bit. Gambar-gambar berikut menunjukkan bahwa aplikasi 32-bit seperti Adobe Reader 9.1.2 dan Skype 2.0.0.72 for Linux dapat dijalankan dengan mulus pada Slackware64 di laptop penulis serta pada saat booting, Anda akan melihat beberapa baris tambahan.


Catatan khusus bagi yang ingin meng-compile aplikasi 32-bit dari source, misalnya meng-compile wine, Anda harus mengkonfigurasi shell environment dengan menjalankan command berikut ini (lengkap dengan titiknya):

# . /etc/profile.d/32dev.sh


Cukup sekian tutorial multilib ini. Informasi lebih detil dapat Anda baca pada website Eric Hamaleers yang tercantum pada bagian referensi.

Referensi:


Summary:
This article shows how to enable multilib on Slackware64 in Indonesian based on Eric's work (see referensi). If you want to know more about enabling multilib on Slackware64 in English, I encourage you to read yourself at Eric's writing that is more detail than mine.

Tuesday, September 29, 2009

Instalasi digiKam 1.0.0-beta4 pada Slackware -- digiKam 1.0.0-beta4 Installation on Slackware --

digiKam adalah suatu program aplikasi yang dikhususkan untuk memanajemen foto-foto digital. Program ini menyediakan suatu user interface (tampilan) yang sederhana tetapi mempunyai fungsi yang banyak dan handal, seperti import-export (download-upload) foto digital, mengenali lebih dari 1000 kamera digital yang telah beredar di pasaran, mengatur foto-foto digital kita yang sangat banyak dalam directory-directory sesuai dengan keinginan kita, membaca exif data dari foto digital, editing, dan sebagainya. File foto digital yang di-support cukup banyak, seperti RAW format dari berbagai vendor kamera digital, JPEG, TIFF, PNG, still image compression, dan moving image format (video). Program digiKam yang akan dibahas kali ini adalah digiKam 1.0.0-beta4 yang sudah dapat didownload sejak 31 Agustus 2009.

Instalasi digiKam pada Slackware/Slackware64 13.0 cukup mudah, Anda hanya membutuhkan tambahan 1 dependency, yaitu lensfun, sedangkan dependencies yang lain sudah tersedia pada Slackware/Slackware64 13.0. Untuk lensfun -saat tutorial ini dibuat, lensfun sudah versi 0.2.3-, Anda bisa men-download source file-nya, yaitu lensfun-0.2.3.tar.bz2, dari website projeknya, http://lensfun.berlios.de, sedangkan slackbuild script dari lensfun (lensfun.tar.gz) dapat Anda peroleh dari slackbuild.org. Setelah source file dan slackbuild script untuk lensfun telah Anda download, langkah selanjutnya adalah Anda ekstrak slackbuild script (lensfun.tar.gz) lalu source file lensfun-0.2.3.tar.bz2 Anda letakkan pada directory yang sama dengan lensfun.SlackBuild. Sebagai catatan kecil, jika Anda menggunakan slackware64 13.0, kita harus meng-edit file lensfun.SlackBuild pada bagian ARCH=${ARCH:-i486} menjadi ARCH=${ARCH:-x86_64}. Selanjutnya, jalankan script lensfun.SlackBuild pada mode root atau superuser (su) karena slackbuild script membutuhkan akses ke directory /tmp. Jika tidak ada error -seharusnya tidak ada ... :)-, maka Anda akan menemukan file lensfun-0.2.3-i486-1_SBo.tgz (atau lensfun-0.2.3-x86_64-1_SBo.tgz untuk slackware64) pada directory /tmp lalu installpkg. Urutan langkah instalasi lensfun dapat disimpulkan sebagai berikut:

$ tar -xvzf lensfun.tar.gz $ cd lensfun $ cp path-to/lensfun-0.2.3.tar.bz2 ./ $ su # ./lensfun.SlackBuild # installpkg /tmp/lensfun-0.2.3-i486-1_SBo.tgz

That's all for lensfun. Anda bisa copy file /tmp/lensfun-0.2.3-i486-1_SBo.tgz ke directory yang Anda kehendaki sebagai arsip dan hapus file hasil proses slackbuild script dari /tmp/SBo.

Langkah selanjutnya adalah instalasi digiKam 1.0.0-beta4. Source file, digikam-1.0.0-beta4.tar.bz2, dapat di-download dari website http://www.digikam.org. Untuk slackbuild script dari digiKam, tidak tersedia, tetapi Eric Hameleers (alienBOB) menyediakan slackbuild script untuk digiKam versi 0.10.0 yang dapat didownload dari http://connie.slackware.com/~alien/slackbuilds/digikam. Untuk proses kompilasi dan instalasi digiKam, penulis memilih proses kompilasi dan instalasi dari source file. Cara cukup mudah, terutama bagi para slackers ... betul khan ... :). Pertama kali, tentu saja, ekstrak file digikam-1.0.0-beta4.tar.bz2, lalu masuk ke directory hasil ekstrak tersebut (biasanya digikam-1.0.0-beta4). Selanjutnya cmake ., make, dan make install (dalam mode root atau superuser) jika tidak ada error -seharusnya tidak ada ... :)-, digiKam sudah siap pada PC/laptop Anda. Urutan langkah kompilasi dan instalasi digiKam dapat disimpulkan sebagai berikut:

$ tar -xvjf digikam-1.0.0-beta4.tar.bz2 $ cd digikam-1.0.0-beta4 $ cmake . $ make $ su # make install

That's all for digiKam. So easy, isn't it?

Beberapa gambar tampilan digiKam 1.0.0-beta4 pada laptop saya dapat dilihat di bawah ini.


Referensi:
http://www.digikam.org
http://lensfun.berlios.de
http://slackbuild.org


Summary:
digiKam is an advanced, KDE Digital Photo Management Application with support for Digital Cameras. It needs some dependencies software, but, we only add lensfun on Slackware/Slackware64 13.0. First, download the source of lensfun-0.2.3.tar.bz2 then download the SlackBuild script (lensfun.tar.gz) from slackbuild.org. Next, follow the steps below:

Please note that you have to change path-to to correct directory and if you use Slackware64, please change the line ARCH=${ARCH:-i486} to ARCH=${ARCH:-x86_64} before executing lensfun.SlackBuild.

$ tar -xvzf lensfun.tar.gz
$ cd lensfun
$ cp path-to/lensfun-0.2.3.tar.bz2 ./
$ su
# ./lensfun.SlackBuild
# installpkg /tmp/lensfun-0.2.3-i486-1_SBo.tgz

That's all for lensfun.

Now, the main job, compiling digiKam from source and install it. Download the source of digiKam-1.0.0-beta4.tar.bz2, then follow these steps:

$ tar -xvjf digikam-1.0.0-beta4.tar.bz2
$ cd digikam-1.0.0-beta4
$ cmake .
$ make
$ su
# make install

Now, you can run digiKam from your Slackware. That's all for digiKam. So easy, isn't it?

Prosesor Anda 32-bit atau 64-bit? -- What is your processor? 32-bit or 64-bit? --

Beberapa waktu lalu, pada milis id-slackware, ada yang menanyakan pada saya tentang prosesor yang terpasang pada PC Desktopnya, apakah prosesor 32-bit atau 64-bit? Pertanyaan ini berkaitan dengan dirilisnya Slackware64, yang dikhususkan untuk PC/laptop yang memakai prosesor berarsitektur 64-bit atau berarsitektur yang support komputasi 64-bit. Ternyata, cara untuk mengetahui apakah prosesor kita sudah mensupport komputasi 64-bit sangat mudah. Kita ketikkan saja pada console/terminal:

$ cat /proc/cpuinfo | grep flags

maka akan muncul hasilnya seperti gambar berikut ini:


Lalu, kita cari flag lm. Jika kita temukan flag ini, maka prosesor PC/laptop kita sudah support komputasi 64-bit, sehingga kita bisa menginstall sistem operasi 64-bit.

Catatan: lm singkatan dari Long Mode (64-bit mode)

Referensi:
  • http://www.cyberciti.biz/faq/linux-how-to-find-if-processor-is-64-bit-or-not/
  • http://www.unixtutorial.org/2009/05/how-to-confirm-if-your-cpu-is-32bit-or-64bit/
  • http://www.cyberciti.biz/tips/how-do-i-find-out-if-my-server-cpu-can-run-a-64-bit-kernel-version-apps-or-not.html


Summary:
In id-slackware mailing-list, someone asked me about kind of processor he had, 32-bit or 64-bit. The answer is we can know it from cpuinfo by typing this command at console/terminal:

$ cat /proc/cpuinfo | grep flags

If you find lm flag (Long Mode) in the result, you have a 64-bit capable processor so that you can use 64-bit operating system.

My New-look Slackware

It was more than 3 years I have been waiting for 64-bit official port of Slackware (since I bought laptop with AMD Turion64 processor). Finally, in the end of August 2009, the good news has been coming when Pat and Eric announced release version of Slackware64 13.0. After I heard that news, I installed Slackware64 13.0 as soon as possible. I didn't any difficulty because I have used Slamd64, an 64-bit unofficial port of Slackware, created and maintained by Fred Emmott for 3 years; although Eric built Slackware64 by his own work, it has similarity to Slamd64 because Eric has learnt Fred's work in Slamd64. CMIIW.

The new-look slackware on my laptop can be seen at the picture below.



Thank's to Eric for realizing the 64-bit official port of Slackware. It is so nice. Great job.
Also, I would like to thank abundantly to Fred Emmott that has been created and maintained Slamd64 very well so that I still could use my favorite Linux distro, Slackware.