Halaman

Tampilkan postingan dengan label Software. Tampilkan semua postingan
Tampilkan postingan dengan label Software. Tampilkan semua postingan

Senin, 17 Maret 2014

Install NTPD from source package

# apt-get source ntp

Reading package lists... Done
Building dependency tree
Reading state information... Done
NOTICE: 'ntp' packaging is maintained in the 'Svn' version control system at:
Need to get 4,218 kB of source archives.
Get:1 http://mirrors.kernel.org/debian/ wheezy/main ntp 1:4.2.6.p5+dfsg-2 (dsc) [1,566 B]
Get:2 http://mirrors.kernel.org/debian/ wheezy/main ntp 1:4.2.6.p5+dfsg-2 (tar) [4,112 kB]
Get:3 http://mirrors.kernel.org/debian/ wheezy/main ntp 1:4.2.6.p5+dfsg-2 (diff) [104 kB]
Fetched 4,218 kB in 15s (276 kB/s)
gpgv: keyblock resource `/root/.gnupg/trustedkeys.gpg': file open error
gpgv: Signature made Sat 12 May 2012 04:07:36 PM WIB using DSA key ID 554FB4C6
gpgv: Can't check signature: public key not found
dpkg-source: warning: failed to verify signature on ./ntp_4.2.6.p5+dfsg-2.dsc
dpkg-source: info: extracting ntp in ntp-4.2.6.p5+dfsg
dpkg-source: info: unpacking ntp_4.2.6.p5+dfsg.orig.tar.gz
dpkg-source: info: unpacking ntp_4.2.6.p5+dfsg-2.debian.tar.gz
dpkg-source: info: applying dfsg.patch
dpkg-source: info: applying includes.patch
dpkg-source: info: applying ntpdate-ipv6.patch
dpkg-source: info: applying ntpd-linux-caps-runtime.patch
dpkg-source: info: applying ntpd-linux-caps-inheritable.patch
dpkg-source: info: applying ntpd-ni-maxhost.patch
dpkg-source: info: applying openssl-disable-check.patch
dpkg-source: info: applying libedit.patch
dpkg-source: info: applying autotools.patch
dpkg-source: info: applying format-security.patch
dpkg-source: info: applying sntp-manpage.patch

# ls
ntp-4.2.6.p5+dfsg  ntp_4.2.6.p5+dfsg-2.debian.tar.gz  ntp_4.2.6.p5+dfsg-2.dsc  ntp_4.2.6.p5+dfsg.orig.tar.gz

# cat ntp-4.2.6.p5+dfsg/debian/rules

jika udah dapat option config nya silahkan sesuaikan dengan yang akan di install nanti. 


#tar xvf ntp-dev-4.2.7p417.tar.gz

#cd ntp-dev-4.2.7p417/

#./configure CFLAGS='-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fno-strict-aliasing'  CPPFLAGS='-D_FORTIFY_SOURCE=2 -D_GNU_SOURCE' LDFLAGS='-Wl,-z,relro -Wl,--as-needed'  --prefix=/usr/local/ntp --enable-all-clocks --enable-parse-clocks --enable-SHM  --disable-debugging --with-sntp=no --with-lineeditlibs=edit --without-ntpsnmpd  --disable-local-libopts --enable-ntp-signd --disable-dependency-tracking --with-openssl-libdir=/usr/lib/x86_64-linux-gnu/ --enable-clockctl

#make

#make install

pico /etc/init.d/ntp

[...]
DAEMON=/usr/local/ntp/sbin/ntpd
[...]

Rabu, 12 Maret 2014

Recompile Package on Debian

This article will show how you can rebuild any debian package. You might need to rebuild a package for various reasons: add/remove some compilation options, make some changes to the sources, or compile a newer version from testing/sid into stable, etc. Regardless of your reason, this can be done very easy using debian tools.
First you will need to have some basic debian building tools installed:


1
apt-get install devscripts build-essential

1. Get the source package

Debian repositories contain the sources for all existing debian packages. In order to get a source package you will need to have in your /etc/apt/sources.list a deb-src line (this is exactly as a regulardeb repository line, but it is for sources). This will look like:


1
deb-src http://ftp.us.debian.org/debian/ etch main non-free contrib

change it accordingly to your needs (a close mirror, testing or sid instead of etch, and so on).
Once you have your sources file updated refresh your packages lists:


1
apt-get update

Now you can install the source package using:


1
apt-get source <package>

this will download the source package inside the local folder, so you might want to change to a proper location before doing this. Also as the final step it verifies and uncompresses the package and prepares it for compilation. You will just have to move in the newly created folder (name and version of the package).

2. Installing dependencies

The compilation of each package will have its own unique set of dependencies, based on the software itself. You will need to install them prior to the actual compilation, if not the process will most certainly fail. To do this we will again rely on the powerful apt:


1
apt-get build-dep <package>

this will pull from your current repository the needed dependencies, and install them.

3. Make your changes and rebuild the package

Now is the time to make your changes. This is outside the scope of this post, but normally you will either modify source files of the package or make changes inside the debian compilation scripts (or maybe no changes are needed and you are doing just a recompile on a different architecture). Inside the debian folder you have important files like rules (that contain the compilation options among others), changelog if you want to add your own version you will need to add it here, and so on. Check the debian maintainer’s guide for full details.
Once you’ve made your changes you can start the compilation using:


1
2
cd <package-ver>
debuild -us -uc

We used debuild -us -uc since we are not the maintainer of the package and we will not be able to sign the package.
You will find the debian packages that you have just compiled one folder above, among some other files (the initial sources, compilation logs, etc.). You can either put them in a local repository and install them using apt-get as usual, or you can just install them using dpkg:


1
2
cd ..
dpkg -i <package_file.deb>

Finally here is a real life example

Ok, let’s see how this works for a real package. Let’s say we want to recompile for some reason the mysql server package (mysql-server-5.0). Here is how this would work:


1
2
3
4
5
6
apt-get source mysql-server-5.0
apt-get build-dep mysql-server-5.0
cd mysql-dfsg-5.0-5.0.32
debuild -us -uc
cd ..
dpkg -i *.deb
Source : http://www.ducea.com/2008/03/06/howto-recompile-debian-packages/

Selasa, 11 Maret 2014

Compile dan Install Aplikasi dari Source Code

Compile dan Install Software Dari Source Code. Kadangkala kita mendapat aplikasi dalam bentuk source code. Itu berarti aplikasi open source, karena kita bisa mendapatkan source code dari program tersebut. Biasanya source code aplikasi mempunyai ekstensi .tar.gz atau .tar.bz2, atau kata lainnya adalah tarball. Untuk menggunakannya kita perlu mencompilenya. Ekstensi berbeda, perlakuan berbeda pula. Walaupun melakukan kompilasi source code terlihat susah dan rumit, tetapi sebenarnya tidak sama sekali.

Langkah-langkah instalasi biasanya seperti berikut ini,
# tar xvzf namapaket.tar.gz (atau tar xvjf namapaket.tar.bz2)
# cd namapaket
# ./configure
# make
# make install
Memang mudah, tinggal mengikuti langkah-langkah tersebut kita sudah berhasil menginstal aplikasi melalui source code. Tetapi kita tidak mengerti apa sebenanrya langkah-langkah tersebut, tidak mengerti untuk apa dan kenapa menggunakan langkah-langkah tersebut. Saya akan coba menjelaskan apa maksud dari langkah-langkah tersebut.

Langkah pertama, Unpacking.

Setelah kita mendapatkan paket yang akan kita install, langkah yang harus kita lakukan selanjutnya adalah extract atau unpack file tersebut. Bisa kita lihat bahwa file yang akan kita install berbentuk archive .tar.gz atau .tar.bz2. Jadi disini source code yang telah dikumpulkan di compress menjadi satu dalam archive .tar yang berarti source code tersebut menjadi tarball. Setelah itu kemudian di compress lagi menggunakan gzip jika file berbentuk .tar.gz atau menggunakan bzip2 jika file berekstensi .tar.bz2.

Proses instalasi untuk kedua jenis paket ini sama. Yang berbeda hanya pada saat extract atau unpack paket tersebut. Disini saya contohkan file yang akan kita install bernama aplikasi.tar.gz atau aplikasi .tar.bz2. Dan tempat file tersebut diinstall ada di home direktori user yang bernama saya, dalam folder downloads, (/home/saya/downloads/).

Saya asumsikan sudah masuk ke folder diatas. Kemudian untuk unpacking paket dengan extensi .tar.gz gunakan perintah berikut.
saya@komputer: ~/downloads$ tar xvzf aplikasi.tar.gz

Jika paket berupa .tar.bz2 gunakan perintah berikut ini agar tar tau bahwa file kita merupakan file bzip2.

saya@komputer: ~/downloads$ tar xvjf aplikasi.tar.bz2

Setelah selesai extract biasanya paket aplikasi masuk dalam folder baru. Untuk melihatnya gunakan perintah,
saya@komputer: ~/downloads$ ls
aplikasi aplikasi.tar.gz
saya@komputer: ~/downloads$

Ini berarti paket kita masuk ke dalam direktori aplikasi.

Kita tahu bahwa paket kita masuk ke direktori aplikasi. Kemudian masuk ke direktori tadi dengan peintah,
saya@komputer: ~/downloads$ cd aplikasi
saya@komputer: ~/downloads/aplikasi$

Gunakan perintah ls jika Anda ingin melihat isi dari folder tersebut. Baca file README atau INSTALL untuk melihat keterangan lebih lanjut mengenai paket yang akan di install. Biasanya beberapa paket memerlukan perlakuan khusus yang dijelaskan pada file tersebut. Sampai disini langkah unpacking selesai.

Langkah Kedua, configure

Langkah kedua setelah kita masuk ke direktori paket yaitu melakukan configure terhadap paket tersebut. Biasanya yang perlu kita lakukan adalah dengan menjalankan script configure. Tapi tidak selalu harus demikian, untuk itulah gunanya kita membaca file README dan INSTALL. Untuk melakukan konfigurasi paket gunakan perintah berikut:
saya@komputer: ~/downloads/aplikasi$ ./configure

Kita belum melakukan kompilasi apapun sampai dengan langkah ini. Yang kita lakukan pada langkah configure ini yaitu melakukan pengecekan terhadap system dan menentukan nilai untuk variable yang membutuhkan dependensi terhadap system. Nilai tersebut yang digunakan untuk mengenerate Makefile yang akan digunakan untuk mengenerate binary / executab;e yang sebenarnya.

Configure hanya akan menapilkan pesan error tanpa memperbaiki jika ditemukan error. Jika configure selesai tanpa menampilkan pesan error, kita siap menuju langkah selanjutnya.

Langkah Ketiga, Building.

Langkah selanjutnya adalah mengcompile source code sehingga menghasilkan binary atau program executable. Jalankan perintah make.
saya@komputer: ~/downloads/aplikasi$ make

Perintah make membutuhkan Makefile untuk building program. Jadi sampai langkah ini kita sebaiknya telah berhasil menjalankan langkah kedua dengan sukses atau mencari cara untuk mendapatkan Makefile. Intinya perintah make membutuhkan Makefile.

Lama tidaknya proses ini bergantung pada besar kecilnya aplikasi yang di compile. Juga dipegaruhi oleh spesifikasi komputer yuang digunakan. Semakin baik semakin cepat. Setelah berhasil melakukan make, kita siap untuk langkah terakhir instalasi.

Langkah Keempat, Install.

Langkah untuk instalasi yaitu dengan menggunakan perintah make install. Kita perlu menjadi root untuk langkah ini atau dengan menambahkan sudo di awak perintah. Anda akan ditanya password untuk menjalankan perintah sebagai root.
saya@komputer: ~/downloads/aplikasi$ sudo make install

Tunggu beberapa saat. Setelah selesai, program berhasil diinstall.

Program yang kita install melalui source code biasanya langsung menuju direktori default yaotu /usr/local/bin. Jika direktori tersebut sudah masuk di PATH, maka kita bisa langsung menjalankan aplikasi dengan memanggil nama dari program tersebut.

Membersihkan Berkas Instalasi.

Kita perlu membersihkan berkas-berkas yang tadi digunakan selama instalasi. Hal ini tentunya bisa menghemat disk space. Untuk membersihkannya, gunakan perintah berikut:
saya@komputer: ~/downloads/aplikasi$ make clean

Jangan delete folder instalasi ataupun Makefile. Kita cukup menjalankan perintah tersebut. Karena kita memerlukan Makefile jika suatu saat ingin melakukan uninstall aplikasi tersebut.

Uninstall Program.

Biasanya ada penjelasan tentang bagaimana melakukan uninstall pada manual program. Jika tidak, kita bisa menggunakan Makefile tadi untuk melakukan uninstall.
saya@komputer: ~/downloads/aplikasi$ sudo make uninstall

Jika langkah tersebut tidak menunjukkan error dan selesai, berarti program telah berhasil kita uninstall. Tetapi jika ternyata Makefile tidak berhasil, maka kita harus menghapus program secara manual.

Keterangan dimana file program tersebut berada ada di Makefile tadi. Buka file tersebut dan lakukan penghapusan manual file-file program tersebut.

Sumber tulisan : http://haris.arkodestudio.com/2011/12/compile-dan-install-software-dari.html