Arşiv Oluşturma
Konu başlıkları
|
Arşiv Nedir ?
İçerisinde '.o' uzantılı dosyalarımızı içeren '.a' uzantılı kütüphane dosyasıdır.
Arşiv Nasıl Oluşturulur ?
- Konsoldan , ar cr [arşiv adı] şeklinde komut girerek oluşturulur.
ar cr libDENEME.a
- Daha sonra bu arşive .o uzantılı dosyalarımızı ar q [ arşiv adı ][ *.o uzantılı dosya adı ] komutuyla ekleyebiliriz.
ar q libDENEME.a deneme.o
- Arşivden *.o uzantılı dosyalarımızı ar d [ arşiv adı ][ *.o uzantılı dosya adı ] komutuyla silebiliriz.
ar d libDENEME.a deneme.o
- ar komutunun daha detaylı kullanımı için man ar komutuyla kullanımına bakabilirsiniz.
Arşiv Nasıl Kullanılır ?
Oluşturduğumuzu arşiv dosyasını çalışacağımız projeye libarary olarak ekledikten sonra , arşivden kullanmak istediğimiz kütüphaneyi projemize include ederek kullanabiliriz.
- Projelerimizin *.pro uzantılı dosyasını açıp LIBS += yazan kısma sonuna arşivimizi ekliyoruz.
LIBS+= ../$$OBJDIR/libE9.a /CEREN/CEREN.src/LIB/MDV64/libODS_IO.a /CEREN/CEREN.src/LIB/MDV64/libCEREN.a
Görüldüğü üzre projemize libODS_IO.a ve libCEREN.a arşivlerini ekledik.
- PRE_TARGETDEPS+= yazan kısım içinde aynı şeyleri yapıyoruz.
PRE_TARGETDEPS+= ../$$OBJDIR/libE9.a /CEREN/CEREN.src/LIB/MDV64/libODS_IO.a /CEREN/CEREN.src/LIB/MDV64/libCEREN.a
Arşiv Neden Kullanılır ?
Projelerimizin kaynak dosyalarını kullanıcıdan saklamak , büyük projelerde tüm dosyalar yerine sadece ilgili kısmı derleyip diğerlerini arşivleyip arşivden kullanarak zaman kazanmak , büyük projeleri küçük arşivlere bölerek sadece bir arşiv üzerinde çalışmak için kullanılır.
Mesela , libCEREN arşivinde şirket içerisinde oluşturulan tüm fonksiyon , sınıf , .. yapılardan oluşan kurallarımız var. libCEREN kullanarak projeler oluşturmak istediğimizde libCEREN içerisindeki yapılar tekrar tekrar derlenmez. Kullanacak kişi lib olarak arşivi projeye dahil ettikten sonra arşiv içerisindeki *.h uzantılı dosyaları include ederek , fonksiyonları , sınıfları , .. oluşturulmuş tüm yapı ve kuralları derlemeden kullanabilir.
Arşiv Örnek Kullanım
- 1 ) Önce header ve source dosyalarımızı oluşturalım..
|
|
|
- 2 ) Sonra programımızı derleyerek *.o uzantılı dosyalarımızı oluşturalım
|
- 3 ) Şimdi libDeneme.a arşivimizi oluşturalım ve deneme.o dosyamızı arşivimize atalım.
|
|
- 4 ) Daha sonra dizinimizden *.o uzantılı dosyayı silelim.LIB olarak libDENEME.a yı Deneme.pro dosyamıza ekleyelim ve deneme.cpp'yi source dosyalarından çıkaralım.
|
|
- 5 ) Arşivimiz oluştu.Şimdi test edelim..