İlkini gerçekleştireceğiz uygulama de RPM ile paketve oynamak istediğimiz oyunun motorunu paketleyecek. Onsuz oyun çalışmazdı. |
Tek ihtiyacın aşk
Mevcut SPEC dosyaları openSUSE ilham kaynağı oldular.
Kaynak kodunu indirin
Kaynakları indirmeniz ve KAYNAKLAR klasörüne koymanız gerekecektir.
cd ~ / rpmbuild / KAYNAKLAR
wget https://bitbucket.org/rude/love/downloads/love-0.7.2-linux-src.tar.gz
Boş bir özellik şablonu oluşturun
Bu komut oluşturacak aşk.spec. RPM'de dosyaların adı oldukça önemlidir, çünkü terminolojisi standartlaştırılmıştır mimariniz, sürümünüz, sürümünüz, dağıtımınız vb. gibi birçok şeyi belirtmek için
cd ~ / rpmbuild / SPECS
rpmdev-gazetec aşk
Yeni oluşturulan dosyayı açacağız ~ / rpmbuild / SPECS / love.spec. Bunun boş bir şablon olduğunu göreceksiniz. Bence ilk bölüm oldukça açıklayıcı. Dolduracağız resmi sayfasında bulunan bilgiler.
Şablonu doldurun ve ilk SPEC'imizi oluşturun
Tam dosyanın nasıl göründüğünü, her bölümü açıklayan birçok yorumla birlikte koydum:
# Paketin adı.
# Standarda göre, umlaut'u "o" işaretine kaldırıyoruz.
İsim: aşk
# Paketin orijinal yazarına göre sürüm (yukarı akış)
Sürüm: 0.7.2
# Paketleme versiyonu. Paketi her değiştirdiğimizde, pakete bir tane ekleriz
# bu numara. Bu şekilde yum onu güncellemeyi bilir.
Sürüm:% 1 {? Dist}
# Paketin kısa açıklaması
Özet: LÖVE, Lua'da kolay oyun oluşturma için ücretsiz bir 2D oyun motorudur
# Lisans (sadece ad)
Lisans: ZLIB
# Program web sitesi
URL: http://love2d.org/
# Orijinal kaynakların indirildiği tam URL, genellikle
# .tar.gz, .zip veya benzeri bir arşivde.
#
# Gördüğünüz gibi, makroları kullanıyoruz, böylece paketi güncellersek
# bu satırı değiştirin. Makrolar "ad" ve "sürüm",
# yukarıda belirtmiştik.
Kaynak0: https://bitbucket.org/rude/%name/downloads/%name-%version-linux-src.tar.gz
# Paketi oluşturmak için gerekli bağımlılıklar.
# Bunu web sitesine koyduğu için biliyoruz.
BuildRequires: flac-devel
BuildRequires: freetype-devel
BuildRequires: glibc-devel
BuildRequires: libmpg123-devel
BuildRequires: libmodplug-devel
BuildRequires: physfs-devel
BuildRequires: mesa-libGL-devel
BuildRequires: openal-soft-devel
BuildRequires: DevIL-devel
BuildRequires: libvorbis-devel
BuildRequires: SDL-devel
BuildRequires: libmng-devel
BuildRequires: libtiff-devel
BuildRequires: lua-devel
##########
# Uzun paket açıklaması
% açıklama
LÖVE, tartışmasız harika bir 2D oyun motorudur ve hızlı oyun
Lua'da geliştirme ve prototipleme.
Bu proje sürekli gelişiyor ve değişiklikler gelir ve gider, bazen başlar
bizim tarafımızdan ve bazen başkalarının tavsiyeleriyle. Nasıl olduğuna dair bir fikrin varsa
oyun motorunu daha iyi hale getirmek için bizimle iletişime geçmeniz çok arzu edilir ve
Haydi ne düşündüğünü söyle.
##########
# Bu bölümde kaynakları derlemek ve uygulamak için hazırlayacağız.
Varsa # yama
% hazırlık
# Bu makro, orijinal kaynakları açan bir işlevdir.
# 2 parametre belirtiyoruz:
# -q: Sessiz mod. Her dosya için mesaj göndermeyin
# sıkıştırılmamış.
# -n% name-HEAD: Bu durumda, bir dizini açarken adı verilen
#% name-HEAD. Bunu belirtmeseydik, program arardı
# biri% name-% version aradı ve bulamamak bir hata verecektir.
% setup -q -n% name-HEAD
# Bildiğiniz gibi, Windows'ta oluşturulan metin dosyaları rn ile biter,
# * nix'te ise sadece n ile bitiyorlar. Yani daha iyisi için
# uyumluluk, dahil olan dokümantasyondaki r'leri kaldıracağız.
sed -i 's / r //' * .txt
##########
# Bu bölümde kaynak kodunu derleyeceğiz
% inşa etmek
# Bu, bir dizi ekstra parametre ile ". / Yapılandır" yapmakla aynıdır.
# hata yapmamamızı kolaylaştırın.
% yapılandır
# Varsa, yapılacak varsayılan seçenekleri ekleyin.
# Benim durumumda, bu "make -j3" e genişler.
% {? _ smp_mflags} yap
##########
# Burada programı% buildroot içine kuracağız.
% Yüklemek
# Gerekli önceden tanımlanmış birçok parametreyle "make install" gibi.
% make_install
##########
# Burada kurulu dosyaları denetleriz
% Dosyalar
# Bu işlevle dokümantasyon olan dosyaları göstereceğiz
% doc changes.txt license.txt readme.txt
# Ardından yüklenecek tüm dosyaları listelemelisiniz.
# Bunu kuracak tek dosya / usr / bin / love veya aynısıdır:
% _bindir /% name
##########
# Son olarak, paket değişiklik günlüğünü doldurmanız gerekir
% değişim günlüğü
* Cum Kasım 18 2011 Jairot Llopis0.7.2-1 @ alan.com>
- İlk sürüm
Paketi oluşturmadan önce son bir adımımız var: bağımlılıkları kurmak. Paketten bir yardımcı program kullanacağız yum-utils onları doğrudan oluşturduğumuz dosyadan okumak için.
sudo yum-builddep ~ / rpmbuild / SPECS / love.spec
Bu yeterli olmalı. Ardından paketi oluşturacağız.
rpmbuild -ba ~ / rpmbuild / SPECS / love.spec
Hazır! Paketimizi zaten dizin ağacında dağıtmış durumdayız. Sahip olacağız:
- ~/rpmbuild/RPMS/x86_64/love-0.7.2-1.fc16.x86_64.rpm: RPM kuruluma hazır.
- ~ / rpmbuild / SRPMS / love-0.7.2-1.fc16.src.rpm: Kaynak RPM'si paketi kolaylıkla değiştirmeye hazır. SPEC dosyasını, kaynak kodunu ve yamaları içerir.
deb paketleme için bir eğitim yapabilirsiniz.
Ne kadar iyi bir öğretici, .deb için de bir tane hazırlamanızı istiyorum
muy bueno