<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
  <head>
    <!-- this stylesheet will later on be added by lfparser automatically: -->
<style type="text/css">
<!--
  pre { font-family:monospace,Courier }
  pre.code { font-family:monospace,Courier;background-color:#aedbe8; }
  p.code { width:80%; alignment:center; background-color:#aedbe8; 
        border-style:none; border-width:medium; border-color:#aedbe8; 
        padding:0.1cm ; text-align:left }
-->
</style>

    <title></title>
  </head>

  <body>
    <h1>CheckInstall</h1>

    <h4>ArticleCategory:</h4>
    System Administration 

    <h4>AuthorImage: [Here we need a little image from you]</h4>
    <img src="../../common/images2/MarioMKnopf.jpg" alt="[Photo of the Author]" width="150" height="130"> 

    <h4>TranslationInfo:[Author + translation history. mailto: or http://homepage]</h4>
    <p>original in de <a href="http://www.neo5k.de/">Mario M. Knopf</a>&nbsp;</p>
    <p>en to tr <a href="mailto:onur2029(at)yahoo.com">ONUR YILMAZ</a></p>

    <h4>AboutTheAuthor:[A small biography about the author]</h4>

    <p>Mario Linux, network ve g�venlikle ilgili konularla �al��may�
    sever.</p>

    <h4>Abstract:[Here you write a little summary]</h4>
    <i>Checkinstall</i> tar.gz kaynak sayfalar�ndan otomatik olarak
    RPM/Debian yada Slackware paketleri olu�turan bir yaz�l�md�r. Bu, 
    neredeyse herhangi bir kaynak kodu tar.gz paketinin,  "temiz"
     kurulumunu ve kald�r�lmas�n� sa�lar.     

    <h4>ArticleIllustration:[One image that will end up at the top
    of the article]</h4>
    <img src="../../common/images2/article360.png" alt=
    "[CheckInstall Title]" hspace="10" width="525" height="158"> 

    <h4>ArticleBody:[The main part of the article]</h4>

    <h2>Giri�</h2>

    <p>Test etmek istedi�imiz bir program sadece tar.gz kaynak kodu 
    olarak mevcuttur (rpm yada Debian paketi olarak de�il) ve bu s�k
    kar��la��lan bir durumdur. Bu gibi bir durumda, kaynak paketini 
    indirirsiniz, onu a�ars�n�z ve elle derlersiniz. Buraya kadar her �ey
    yolunda. Fakat program� silmek isterseniz ne olur?</p>

    <p>Program� kald�rmak i�in <i>Makefile</i>  sadece birka� durumda
    uygun yordam(routine) i�erir. Tabii program� ge�ici bir dizine kurmak 
    ve sonraki bir kald�rma i�in kurulum taraf�ndan yarat�lm�� yada 
    de�i�tirilmi� t�m dosyalar� ka��da d�kmek olas�l��� da vard�r. E�er  
    programlar s�kl�kla kaynaklardan derleniyorsa, bu ac� verici ve uzun 
    bir s�re�tir. <i>CheckInstall</i> arac� ( [1] Felipe Eduardo
    S&aacute;nchez D&iacute;az Dur&aacute;n taraf�ndan yaz�lan) bu 
    problemi ��zer.</p>

    <p>Kural olarak <i>GNU Autoconf</i> uyumlu program�, yayg�n olarak 
    bilinen bir komut s�ras� alt�nda derler ve kurars�n�z.<br>
     <i>./configure &amp;&amp; make &amp;&amp; make
    install</i>.<br>
    <i>configure</i> kabuk beti�i �e�itli sistem-ba��ml� de�i�kenler 
    i�in do�ru de�erleri tahmin etmeye �al���r. Bu de�erler daha sonra 
    derleme s�ras�nda kullan�l�r. <i>configure</i> derleme i�in gerekenlerin 
    tamamlan�p tamalanmad���n� kontrol eder ve tahmin etti�i de�erleri paketin 
    her dizininde <i>Makefile</i> yaratmak i�in kullan�r. Bunun d���nda 
    <i>configure</i> beti�i ilave dosyalar �retir. �zet olarak bunlar:</p>

    <ul>
      <li>one or more <i>Makefile(s)</i> in every
      directory/subdirectory</li>

      <li>a shell script called <i>config.status</i></li>

      <li>a text file <i>config.log</i></li>

      <li>another shell script normally called <i>config.cache</i>
      (optional)</li>

      <li>various C header files (*.h) with system-specific
      definitions (optional)</li>
    </ul>

    <p><i>configure</i> beti�i tamamland�ktan sonra, paketi derlemek i�in 
    <i>make</i> yazars�n�z. Bu �al��t�r�labilir binary(ikilik d�zende) 
    dosyalar� �retir. <i>make</i>'in hemen ard�ndan <i>make check</i> ile
    kendi testlerini(kontrollerini) �al��t�rma olas�l��� da vard�r. Fakat
    bu iste�e ba�l� bir ad�md�r; ��nki paket bu i�lemi desteklemelidir. E�er
    <i>make</i> i�ini ger�ekle�tirirse, <i>make install</i> komutuyla derlenmi�
    olan program�n�z� kurabilirsiniz. -bu ad�m i�in imtiyazl� kullan�c� 
    haklar�na sahip olman�z gerekecek. (root olmal�s�n�z) Program ba�ar�l� 
    bir �ekilde kurulduktan sonra, program�n binary ve nesne dosyalar�n�
    kaynak kodu dizininden <i>make clean</i> yazarak silebilirsiniz. E�er 
    <i>configure</i> taraf�ndan yarat�lm�� dosyalar� da silmek isterseniz, 
    <i>make distclean</i> yaz�n. Fakat son anlatt���m iki ad�m <i>make check</i> 
    gibi se�meli ve normalde geli�tirme ve test s�ras�nda geli�tirici 
    taraf�ndan kullan�l�yor. Ayn� zamanda hard disk kapasitesini tasarruflu 
    kullanmak isteyen yada dizin yap�s�n� temiz tutmak isteyen kullan�c� 
    taraf�ndan da kullan�labilir. Bunun d���nda <i>make distclean</i>, paketi 
    bir ba�ka bilgisayar i�in derlemeyi, m�mk�n hale getirir.</p>

    <p><i>GNU Autoconf</i> hakk�nda detayl� bilgi Online-Manual(elkitab�)'da bulunabilir. 
    [2]. Temel ba�lang�� bilgilerinin yan�s�ra, kendi <i>configure</i> betiklerini 
    yapma, <i>M4</i> 'te programlama ve kendi makrolar�n�z� yaratma konular�yla 
    <i>GNU Build System</i> (GNU Sistem Yap�s�) hakk�nda daha fazlas�n� 
    ��renebilirsiniz.</p>

    <h2>CheckInstall</h2>

    <p>Daha �nce de belirtti�im gibi, kaynak kodundan <i>GNU Autoconf</i> 
    uyumlu program kurmak i�in komut s�ras� �uydu:</p>

    <p class="code">./configure &amp;&amp; make &amp;&amp; make
    install</p>

    <p>Bu noktada <i>CheckInstall</i> kullanman�n zaman�d�r. Bu <i>make install</i> 'u
    kendi komutu <i>checkinstall</i> ile de�i�tirmek anlam�na gelir. Di�er iki komut bundan 
    etkilenmiyor ve normal olarak eskisi gibi kullan�l�yor. Bu y�zden 
    <i>CheckInstall</i> ile yeni komut s�ras� ��yle:</p>

    <p class="code">./configure &amp;&amp; make &amp;&amp;
    checkinstall</p>

    <p>Fakat <i>checkinstall</i> komutu yinede <i>make install</i> 'u 
    �ntan�ml� olarak ba�lat�r ve kurulum taraf�ndan yap�lan t�m yazma 
    olaylar�n� izler. <i>CheckInstall</i> bunun i�in, ilk olarak Pancrazio 
    de Mauro taraf�ndan yaz�lm�� olan, <i>Installwatch</i> [3] program�n�
    kullan�r. <i>make install</i> ba�ar�yla tamamland�ktan sonra,  
    <i>CheckInstall</i> bir Slackware-, Debian- yada RPM-Paketi yarat�r 
    ve bu paketi �ntan�ml� paket y�neticisiyle kurar. Paketin bir kopyas�n� 
    o anki kaynak dizininde yada standart depolama dizininde b�rak�r. 
    �stelik yap�land�rma(konfig�rasyon) dosyas�ndaki <i>PAK_DIR</i> de�i�kenini 
    de�i�tirerek �ntan�ml� depolama dizini de�i�tirmek de m�mk�nd�r. Bu paket, 
    olas� paket ba��ml�l�klar� d���n�lerek, a� i�indeki di�er makinelere de 
    kurulabilir. B�ylece kaynak paketinden her seferinde tekrar tekrar 
    derlememi� oluruz.</p>

    <p><i>CheckInstall</i> sadece <i>make install</i> 'dan yararlanmaz. 
    Di�er kurulum komutlar�yla da �al���r. �rne�in; kurulum beti�i <i>setup.sh</i>
    ise, komut tak�m� ��yle olur:</p>

    <p class="code">./configure &amp;&amp; make &amp;&amp;
    checkinstall setup.sh</p>

    <p><i>CheckInstall</i> 'u �e�itli se�eneklerle ba�latma imkan� vard�r. 
    S�radaki komut var olan t�m se�enekleri �e�itli alt b�l�mlere ( <i>Install options</i>,
    <i>Scripting options</i>, <i>Info display options</i>,
    <i>Package tuning options</i>, <i>Cleanup options</i> ve
    <i>About CheckInstall</i> ) ayr�lm�� olarak g�sterir:</p>

    <p class="code"># checkinstall -h</p>

    <p>E�er <i>CheckInstall</i> bu se�eneklerden biriyle ba�larsa, 
    yap�land�rma dosyas�ndaki (<i>checkinstallrc</i>) de�erleri 
    ge�ersiz k�lacakt�r.</p>

    <p>Fakat <i>CheckInstall</i> 'unda limitleri var. Statik olarak 
    ba�lanm�� programlar� i�leyemez; ��nki <i>Installwatch</i> kurulum 
    s�reci boyunca de�i�en olaylar� izleyemez. Genel olarak iki tip program 
    k�t�phanesi vard�r: statik yada dinamik ba�l� k�t�phaneler. Bunlar 
    <i>include</i>-talimat�yla programa t�mle�tirilir. Statik olarak ba�l� 
    programlar t�m gerekli k�t�phane fonksiyonlar�na sahiptirler ve �al��t�rma 
    esnas�nda bunlar� RAM'e y�klememelidirler. Ayr�ca hedef sisteme 
    ger�ekten kurulan k�t�phanelerden ba��ms�zd�rlar. ��nki derleme esnas�nda 
    bir s�zde <i>Linker</i>(ba�lay�c�)  k�t�phaneleri �al��t�r�labilir programa 
    g�mm��t�r.</p>

    <h2>Kurulum</h2>

    <p><i>CheckInstall</i> zaten uzun bir s�re i�in b�y�k da��t�mlar�n 
    yaz�l�m havuzlar�n�n bir par�as�d�r ve kendi paket y�netim sistemiyle 
    kurulabilir. Bunun d���nda uygun tar paketlerini yada �e�itli da��t�mlar i�in 
    �nceden in�a edilmi� paketleri proje websitesinden indirebilirsiniz.[4]</p>

    <p><i>CheckInstall</i> 'un kurulumu olduk�a basit ve birka� ad�mda 
    �al���yor. -fakat ba�ar�l� bir <i>CheckInstall</i> kurulumu i�in paradoksal
    olarak <i>CheckInstall</i> 'a ihtiyac�n�z olacak. Zorunlu komut <i>make install</i>
    'dan sonra <i>checkinstall</i> yazabilirsiniz. Bu derlenmi� programdan 
    uygun �al��t�r�labilir paketi yarat�r. �imdi bu paketi paket y�neticinizle
    kurabilirsiniz ve tabii ki program� temiz bir �ekilde kald�rmak da
    m�mk�n hale gelir. Fakat <i>CheckInstall</i> paketi yaratmadan �nce, 
    kulland���n�z paket y�neticisiyle ilgili bir soruya cevap vermelisiniz ve bilgi 
    alanlar�n�n do�rulu�unu kontrol etmelisiniz. Onlar daha sonra paket ba�l���nda 
    g�r�n�yor.</p>

    <p>Yeni beta s�r�m�n�( <i>checkinstall-1.6.0beta4.tgz</i> ) kurma y�ntemi 
    s�radaki kod kutusunda g�steriliyor. Bu <i>CheckInstall</i>, <i>Installwatch</i> 
    ve <i>makepak</i> 'i (<i>makepkg</i> 'nin de�i�tirilmi� versiyonu) kuracak. 
    E�er yeni s�r�mdeki de�i�iklikleri merak ediyorsan�z, <i>Release Notes</i> 'a 
    [5] (s�r�m notlar�) yada <i>Changelog</i> 'a [6] bir g�z at�n.</p>
<pre class="code">
$ tar xzf checkinstall-1.6.0beta4.tgz
$ cd checkinstall-1.6.0beta4
checkinstall-1.6.0beta4 $ make
[...]
checkinstall-1.6.0beta4 $ su
Password:
checkinstall-1.6.0beta4 # make install
[...]
checkinstall-1.6.0beta4 # checkinstall

checkinstall 1.6.0beta4, Copyright 2002 Felipe Eduardo Sanchez Diaz Duran
This software is released under the GNU GPL.

Please choose the packaging method you want to use.
Slackware [S], RPM [R] or Debian [D]? R

*************************************
*** RPM package creation selected ***
*************************************

This package will be built according to these values:

1 -  Summary:  [ CheckInstall installations tracker, version 1.6.0beta4 ]
2 -  Name:     [ checkinstall ]
3 -  Version:  [ 1.6.0beta4 ]
4 -  Release:  [ 1 ]
5 -  License:  [ GPL ]
6 -  Group:    [ Applications/System ]
7 -  Architecture: [ i386 ]
8 -  Source location: [ checkinstall-1.6.0beta4 ]
9 -  Alternate source location: [  ]
10 - Provides: [ checkinstall ]
11 - Requires: [  ]

Enter a number to change any of them or press ENTER to continue:

Installing with make install...

========================= Installation results =========================
[...]



========================= Installation successful ======================

Copying documentation directory...
./
./NLS_SUPPORT
./README
./FAQ
./TODO
./CREDITS
./INSTALL
./Changelog
./BUGS
./installwatch-0.7.0beta4/
./installwatch-0.7.0beta4/README
./installwatch-0.7.0beta4/TODO
./installwatch-0.7.0beta4/VERSION
./installwatch-0.7.0beta4/INSTALL
./installwatch-0.7.0beta4/CHANGELOG
./installwatch-0.7.0beta4/BUGS
./installwatch-0.7.0beta4/COPYING
./RELNOTES
./COPYING

Copying files to the temporary directory...OK

Striping ELF binaries and libraries...OK

Compressing man pages...OK

Building file list...OK

Building RPM package...OK

NOTE: The package will not be installed

Erasing temporary files...OK

Writing backup package...OK

Deleting temp dir...OK

****************************************************************

Done. The new package has been saved to

/usr/src/redhat/RPMS/i386/checkinstall-1.6.0beta4-1.i386.rpm
You can install it in your system anytime using:

        rpm -i checkinstall-1.6.0beta4-1.i386.rpm

****************************************************************

checkinstall-1.6.0beta4 # cd /usr/src/redhat/RPMS/i386/
i386 # rpm -i checkinstall-1.6.0beta4-1.i386.rpm
i386 #
</pre>

    <p>Debian tabanl� da��t�m kullan�c�lar�, paketi <i>dpkg -i</i> ile kurabilir.
    Slackware kullan�c�lar� bunun i�in <i>installpkg</i> 'yi kullanabilir.</p>

    <p>Paket y�neticinizin sorgulama fonksiyonunu kullanarak, bu durumda RPM, 
    paketin veritaban�na do�ru bir �ekilde t�mle�ip t�mle�medi�ini ��renebilir 
    ve paket ba�l���n�n ek bilgi sahas�n� g�r�nt�leyebilirsiniz.</p>
<pre class="code">
$ rpm -qi checkinstall
Name        : checkinstall            Relocations: (not relocatable)
Version     : 1.6.0beta4              Vendor     : (none)
Release     : 1                       Build Date : Mo 06 Dez 2004 17:05:45 CET
Install Date: Di 07 Dez 2004 01:41:49 Build Host : deimos.neo5k.lan
Group       : Applications/System     Source RPM : checkinstall-1.6.0beta4-1.src.rpm
Size        : 264621                  License    : GPL
Signature   : (none)
Packager    : checkinstall-1.6.0beta4
Summary     : CheckInstall installations tracker, version 1.6.0beta4
Description :
CheckInstall installations tracker, version 1.6.0beta4

CheckInstall  keeps  track of all the files created  or
modified  by your installation  script  ("make install"
"make install_modules",  "setup",   etc),   builds    a
standard   binary   package and  installs  it  in  your
system giving you the ability to uninstall it with your
distribution's  standard package management  utilities.
</pre>

    <h2>Yap�land�rma</h2>

    <p>�yi a��klamal� metin dosyas�n� ( <i>/usr/lib/local/checkinstall/checkinstallrc</i> ) 
     <i>CheckInstall</i> 'un �ntan�ml� davran���n� de�i�tirmek i�in oynayabilirsiniz.</p>

    <p><i>CheckInstall</i> her ba�lat�l��ta hangi paket tipini �retece�ini 
    sordu�undan, bu de�eri <i>INSTYPE</i> '� ayarlayarak kal�c� olarak eklemek 
    ak�ll�ca olacakt�r. Ayr�ca <i>INSTALL</i>, <i>PAK_DIR</i> ve <i>RPM_FLAGS</i> 
    ( alternatif olarak <i>DPKG_FLAGS</i> ) de�i�kenlerine bakmak iyi bir fikir. 
    Son iki de�i�kenle se�imlik kurulum noktalar� belirleyebilirsiniz ve 
    <i>PAK_DIR</i> '� de�i�tirerek paket kopyas� i�in ba�ka bir dizin belirtebilirsiniz. 
    <i>INSTALL</i> size paketi yaratma ve/veya paketi kurma aras�nda karar verme 
    imkan� sunar.</p>
<pre class="code">
$ cat /usr/lib/local/checkinstall/checkinstallrc

####################################################################
                 #    CheckInstall configuration file   #
                 ########################################

####################################################################
# These are default settings for CheckInstall, modify them as you  #
# need. Remember that command line switches will override them.    #
####################################################################

# Debug level
#   0: No debug
#   1: Keep all temp files except the package's files
#   2: Keep the package's files too

DEBUG=0

# Location of the "installwatch" program
INSTALLWATCH_PREFIX="/usr/local"
INSTALLWATCH=${INSTALLWATCH_PREFIX}/bin/installwatch

# Location of the makepkg program. "makepak" is the default, and is
# included with checkinstall. If you want to use Slackware's native "makepkg"
# then set this to "makepkg"

MAKEPKG=/sbin/makepkg

# makepkg optional flags. These are recommended if running a newer Slackware
# version: "-l y -c n"

MAKEPKG_FLAGS="-l y -c n"

# Is MAKEPKG running interactively? If so, you might want
# to see what it's doing:

SHOW_MAKEPKG=0

# Where will we keep our temp files?
BASE_TMP_DIR=/var/tmp   ##  Don't set this to /tmp or / !!

# Where to place the installed document files
DOC_DIR=""

# Default architecture type (Leave it empty to allow auto-guessing)
ARCHITECTURE=""

# Default package type. Leave it empty to enable asking everytime
#   S : Slackware
#   R : RPM
#   D : Debian

INSTYPE="R"

# Storage directory for newly created packages
# By default they will be stored at the default
# location defined for the package type

PAK_DIR=""

# RPM optional flags
RPM_FLAGS=" --force --nodeps --replacepkgs "

# dpkg optional flags
DPKG_FLAGS=""


## These are boolean. Set them to 1 or 0

# Interactively show the results of the install command (i.e. "make install")?
# This is useful for interactive installation commands
SHOW_INSTALL=1

# Show Slackware package installation script while it runs? Again, useful if
# it's an interactive script
SHOW_SLACK_INSTALL=0

# Automatic deletion of "doc-pak" upon termination?
DEL_DOCPAK=1

# Automatic deletion of the spec file?
DEL_SPEC=1

# Automatic deletion of "description-pak"?
DEL_DESC=1

# Automatically strip all ELF binaries?
STRIP_ELF=1

# Automatically strip all ELF shared libraries?
# Note: this setting will automatically be set to "0" if STRIP_ELF=0
STRIP_SO_ELF=1

# Automatically search for shared libraries and add them to /etc/ld.so.conf?
# This is experimental and could mess up your dynamic loader configuration.
# Use it only if you know what you are doing.
ADD_SO=0

# Automatically compress all man pages?
COMPRESS_MAN=1

# Set the umask to this value
CKUMASK=0022

# Backup files overwritten or modified by your install command?
BACKUP=1 

# Write a doinst.sh file that installs your description (Slackware)?
AUTODOINST=1

# Are we going to use filesystem translation?
TRANSLATE=1            

# Reset the owner/group of all files to root.root?
RESET_UIDS=0

# Use the new (8.1+) Slackware description file format?
NEW_SLACK=1

# Comma delimited list of files/directories to be ignored
EXCLUDE=""

# Accept default values for all questions?
ACCEPT_DEFAULT=0

# Use "-U" flag in rpm by default when installing a rpm package
# This tells rpm to (U)pdate the package instead of (i)nstalling it.
RPM_IU=U

# Inspect the file list before creating the package
CK_INSPECT=0
      
# Review the .spec file before creating a .rpm
REVIEW_SPEC=0

# Review the control file before creating a .deb
REVIEW_CONTROL=0
      
# Install the package or just create it?
INSTALL=0
</pre>

    <h2>Sonu�</h2>

    <p><i>CheckInstall</i> Linux y�netimini daha kolay yapmam�z� sa�layan 
    m�kemmel bir ara�. �zellikle programlar s�k s�k kaynaklar�ndan derlenmeliyse  
    <i>CheckInstall</i> size, sisteminizin kararl�l���n� bozmadan, programlar�n�z� 
    temiz bir �ekilde kald�rma imkan� verir. Bunun d���nda olu�turulan bu paketleri 
    ba�ka makinalarada da tekrar tekrar derlemeye gerek kalmaks�z�n kurabilirsiniz. -
    tabii ki olas� paket ba��ml�l�klar�n� d���nmek zorundas�n�z. Fakat bu 
    genellikle �zde� makinalar i�in �ok b�y�k problem de�ildir.</p>

    <h2>Links</h2>

    <p>[1] <a href="http://asic-linux.com.mx/~izto/checkinstall/"
    >http://asic-linux.com.mx/~izto/checkinstall/</a>
    [Home of CheckInstall]<br>
    [2] <a href=
    "http://www.gnu.org/software/autoconf/manual/autoconf-2.57/autoconf.html"
     >http://www.gnu.org/software/autoconf/manual/autoconf-2.57/autoconf.html</a>
    [GNU Autoconf Online Manual]<br>
    [3] <a href=
    "http://asic-linux.com.mx/~izto/checkinstall/installwatch.html"
    >http://asic-linux.com.mx/~izto/checkinstall/installwatch.html</a>
    [Installwatch]<br>
    [4] <a href=
    "http://asic-linux.com.mx/~izto/checkinstall/download.php"
    >http://asic-linux.com.mx/~izto/checkinstall/download.php</a>
    [CheckInstall Downloads]<br>
    [5] <a href=
    "http://asic-linux.com.mx/~izto/checkinstall/docs/RELNOTES"
    >http://asic-linux.com.mx/~izto/checkinstall/docs/RELNOTES</a>
    [Release Notes]<br>
    [6] <a href=
    "http://asic-linux.com.mx/~izto/checkinstall/docs/Changelog"
    >http://asic-linux.com.mx/~izto/checkinstall/docs/Changelog</a>
    [Changelog]</p>
    <!-- vim: set sw=2 ts=2 et tw=74: -->
  </body>
</html>