26 Aralık 2015 Cumartesi

Lazarusta (Ubuntuda) Çalıştırılabilir dosya boyutunu UPX ile küçülme işlemi.


Bundan bir önceki yazımızda “Smart Strip” işleminden bahsetmiştik. Smart Strip lazarus'un oluşturduğu “elf” çalıştırılabilir dosyalarının içerisinde bulunan debug bilgilerinin temizlenerek dosya boyutunu nispeten küçültmemizi sağlamaktaydı. Peki daha da küçültmek istiyorsak çalıştırılabilir dosyamızı yapmamız gereken şey nedir? Tabiki sıkıştırma programları. Piyasa birçok sıkıştırma programı olduğu söylenebilir. Bunlardan birisi de tamamen ücretsiz ve açık kaynak olan UPX programıdır. Bu tip programlar çalıştırılabilir formdaki elf yada exe tipindeki dosyaların sıkıştırılması işlemini yapar. Bu sıkıştırma işlemi çalıştırılabilir dosyanın boyutunu küçültme maksadıyla yapıldığı gibi daha çok yazılımın “cracker” dediğimiz dosya hackleme işlemini yapan kişilerden korumak maksadıyla yapılır. Tabi UPX bilinen bir sıkıştırma algoritmasına sahip olduğu için cracker lar açısından pek uğraştırıcı bir koruma olmayacaktır. Bizim burada kullanma maksadımız çalıştırılabilir dosyamızın daha iyi dağıtılabilir olması için asgari dosya boyutunu elde etmek olduğu için anlatımımız bu yönde olacaktır.

İlk yazımızda bahsettiğimiz gibi öncelikle lazarus “Araçlar (tools)” menüsünden “Configure External Tools” menüsüne tıklarız. Açılan ekrandan sırasıyla “Ekle” butonuna tıklarız. Karşımıza “Edit Tool” isimli bir ekran gelecek. Bu ekranda;


Title : UPX Sıkıştırma
Program Name : /home/gnukarabatak/upx-3.91-i386_linux/upx
Parameters : ./upx "$TargetFile()"

Bir derlenmiş dosyayla ilgili yapılmış bir çalışmadan örnek veriler :

Sırası
İşlem Adı
İşlem Öncesi Dosya Boyutu
İşlem Sonrası Dosya Boyutu
1
Derleme İşlemi .... 56,8 MB
2
Smart Strip 56,8 MB 9,1 MB
3
UPX Sıkıştırma 9,1 MB 3,0 MB


Lazarusla ilgili ekran görüntüleri aşağıdaki gibidir.


 


 


 
Bu yazıdaki en önemli nokta ve hatta bu yazıyı yazmama sebep olan husus girilen “Parameters” değeridir. Ubuntu için bu değeri

./upx "$TargetFile()" yerine
upx "$TargetFile()" şeklinde 

girerseniz Upx çalışmayacaktır. Bu ubuntu(linux) üzerindeki elf formundaki dosyaların konsol /terminal üzerinde çalıştırılırken uyulması gereken bir kuraldan kaynaklandığını söyleyebiliriz. Ayrıntılar için ubuntu yada linux kullanım kitapçıklarına, wiki belgelerine bakabilirsiniz.

Başka bir yazıda görüşmek üzere hoşçakalın.


duralikiraz.blogspot.com
21 Aralık 2015
Muvaffakiyet Allahtandır.”


Kaynaklar :

Hiç yorum yok:

Yorum Gönder