Linux'ta Git Kullanarak Yazılım Nasıl Kurulur

Yayınlanan: 2022-01-29
Dizüstü bilgisayar ekranındaki kod
MchlSkhrv/Shutterstock

Size “repoyu klonlamanız ve oluşturmanız” söylendi mi ve daha sonra ne yapacağınızı bilmiyor musunuz? Yeni başlayan biri olsanız bile, bu programı GitHub'da Linux üzerinde nasıl çalıştıracağınızı göstereceğiz.

Bir bilgisayar programını oluşturan yönergeler yazılır, düzenlenir ve metin dosyalarına kaydedilir. Derleyici adı verilen bir program daha sonra bu dosyaları işler. Bu, programın yürütülebilir sürümünü üretir. Talimatların metin dosyalarına kaynak kodu denir. Programın bir bilgisayarda gerçekten çalışabilen sürümüne ikili veya yürütülebilir dosya adı verilir.

Bu, olayların basitleştirilmiş bir versiyonudur, ancak genelleştirilmişse doğru bir resim çizer. Pratikte, o modelde her türlü varyasyonu bulacaksınız. Bazen, diğer programlar metin dosyalarını oluşturur. Diğer zamanlarda, kaynak kod bir yorumlayıcı içinde çalışır ve derlenmesi gerekmez vb.

Bununla birlikte, tüm yazılım projelerindeki tek evrensel gerçek şudur: kaynak kod dosyaları en önemli mücevherlerdir ve aynı dikkatle bakılmaları gerekir.

Sürüm Kontrol Programları

Bir projedeki tüm kaynak kod dosyalarına kod tabanı adı verilir. Büyük projelerde genellikle kod temeli üzerinde çalışan birçok geliştirici bulunur. Her kod değişikliği izlenebilir ve tanımlanabilir olmalıdır. Gerekirse, değişiklikler geri alınabilir olmalıdır. Farklı geliştiriciler aynı kaynak kod dosyasında değişiklik yaparsa, düzenlemelerinin birleştirilmesi gerekir.

Reklamcılık

O halde, kod tabanındaki değişikliklerin yönetimini kolaylaştırmak için sürüm kontrol sistemleri adı verilen yazılım programlarının mevcut olması şaşırtıcı değildir. Sürüm kontrol sistemleri, her dosyanın önceki tüm sürümlerini kod tabanında tutar ve her değişiklik kaydedilir, yorumlanır ve izlenir.

Git Adında Küçük Bir Şey

Linux çekirdeğinin yaratıcısı Linus Torvalds, Linux çekirdeği kod tabanını yönetmek için Git adlı bir sürüm kontrol programı geliştirdi. Artık dünyanın en yaygın olarak benimsenen sürüm kontrol yazılımıdır. Kelimenin tam anlamıyla onu kullanan milyonlarca insan var.

Git ile bir projenin kod tabanı depolarda saklanır. Geliştiricinin bilgisayarlarında ve belki de ağdaki merkezi bir sunucuda bulunan yerel havuzlara ek olarak, site dışı veya uzak bir havuza sahip olmak iyi bir uygulamadır.

GitHub burada devreye giriyor.

GitHub

GitHub, git başarısının bir sonucu olarak oluşturuldu. Kurucular, güvenli bir şekilde barındırılan uzak git depolarına yönelik artan ihtiyacı gördüler. Geliştirme ekiplerinin uzak depoları barındırmasına izin vermek için bir bulut platformu sağlayan bir iş kurdular. Nisan 2019 itibariyle GitHub, 100 milyondan fazla depoya ev sahipliği yapıyor.

Bir uygulama açık kaynaklı bir projeyse, GitHub'da barındırılma olasılığı çok yüksektir. BitBucket ve GitLab gibi başka depo platformları da mevcuttur, ancak GitHub, açık kaynak depolarında aslan payına sahiptir.

Bir Deponun Anatomisi

GitHub deposu, çok önemli kaynak kod dosyaları gibi dosyaları içeren klasörlerden oluşur. Genellikle, depoda birçok başka dosya türü vardır. Belge dosyaları, kılavuz sayfaları, yazılım lisans dosyaları, yapım talimatları ve kabuk komut dosyaları olabilir. Bir havuzun neyi içermesi veya içermesi gerektiğine dair kurallar yoktur, ancak kurallar vardır.

Reklamcılık

Bir mutfakta yolunuzu biliyorsanız, herhangi bir mutfakta gezinebilirsiniz. Depolarda da durum aynı. Sözleşmeleri anladıktan sonra, ihtiyacınız olanı bulmak için nereye gideceğinizi bilirsiniz.

Peki, bilgisayarınızda deponun bir kopyasını nasıl edinirsiniz ve programı ikili bir yürütülebilir dosyaya nasıl kurarsınız?

Benioku Dosyası

Bir depoya benioku dosyası eklemek gelenekseldir. Benioku, Benioku veya BENİOKU olarak adlandırılabilir. “.md” uzantısına sahip olabilir veya hiç uzantısı olmayabilir.

Atom düzenleyicisi için GitHub deposuna bir göz atalım. Uzun bir klasör ve dosya listesi görüyorsunuz. Aşağı kaydırdığınızda README.md dosyasının içeriğini görürsünüz.

GitHub, benioku dosyasının içeriğini otomatik olarak havuzun ön sayfasına yerleştirir. Benioku dosyasının bir “.md” uzantısı varsa, Markdown biçimlendirme dilini içerecektir. Bu, geliştiricilerin yazı tipleri, madde işaretleri ve resimler gibi stil öğelerini kullanmalarına olanak tanır.

github'daki atom düzenleyicisi için readme.md dosyasının bölümü.

Tipik olarak, bir benioku dosyası size projenin ne hakkında olduğunu, tür lisansının ne olduğunu, projeyi kimin sürdürdüğünü, nasıl dahil edileceğini ve uygulamanın nasıl oluşturulacağını ve çalıştırılacağını söyleyen bölümlere sahiptir.

Reklamcılık

Gerçek yapım talimatlarını listelemiyorsa, bu bilgiyi nerede bulacağınızı size söyleyecektir. Gerekli derleme araçları ve diğer bağımlılıklar gibi uygulamayı oluşturmak için yararlı olan diğer bilgiler burada listelenebilir veya bir bağlantı sizi bu bilgilere götürebilir.

Kutular Deposu

Misyonumuz, kutular deposunu klonlamak ve ardından boxes uygulamasını oluşturmaktır.

Depo, Atom'un yaptığı aynı düzeni takip eder. Klasörlerin ve dosyaların bir listesi var ve bunun altında benioku dosyasının içeriği var. Bir havuz için standart düzeni takip eder, ancak daha küçük bir projedir, bu nedenle daha az klasör ve dosya vardır.

Benioku dosyası da daha kısadır. “Geliştirme” adında bir bölümü var. Bu bölümde “kaynaktan inşa” başlıklı bir bağlantı var. Bu bağlantıyı takip edersek, ihtiyacımız olan bilgiyi bulmalıyız.

Kutu uygulaması için yapım talimatlarına bağlantı.

Depoda gezinmek ve istediğiniz bilgiyi bulmak için genellikle hafif bir hafiyelik gerekir, ancak bu zor değildir. Depo sayfasındaki her şeyi dikkatlice okuyun. Bazen bilgi oradadır ancak belirgin bir şekilde görüntülenmeyebilir.

Bağımlılıklar

"Kaynaktan İnşa Etme" sayfasında "Linux'ta İnşa Etme" adında bir bölüm var ve tam da ihtiyacımız olan şey bu. Bir C derleyicimizin, Bison'ın ve Flex'in kurulu olması gerektiğini söylüyor.

Kutu uygulamasını oluşturmak için gerekli araç seti

Reklamcılık

Derleme talimatları, make komutunu vermemizi söylüyor, bu yüzden ayrıca make ihtiyacımız olacak.

Bu uygulamayı oluşturmak için gerekli araçlar bir C derleyicisi, Bison, Flex, make ve Git'tir (depoyu bilgisayarınıza klonlamak için).

Bu makale Ubuntu, Fedora ve Manjaro Linux dağıtımlarını çalıştıran bilgisayarlarda araştırılmıştır. Dağıtımın hiçbirinde bu araçların tümü kurulu değildi - her birine bir şeyler yüklenmesi gerekiyordu.

Araç Setinin Kurulumu

Ubuntu'nun Git, Flex, Bison'a sahip make ve kurması gerekiyordu. İşte komutlar:

 sudo apt-get kurulum git 

 sudo apt-get kurulum esnekliği 

 sudo apt-get install bizon 

 sudo apt-get install make 

Fedora'nın Flex, Bison'a sahip make ve kurması gerekiyordu. İşte komutlar:

 sudo dnf esnek kurulum 

 sudo dnf bizon yükleyin 

 sudo dnf kurulum yapmak 

Manjaro'da GCC derleyicisi, Flex ve Bison kurulu olması gerekiyordu. İşte komutlar:

 sudo pacman -Syu gcc 

 sudo pacman -Syu esnek 

 sudo pacman -Syu bizonu 

Depoyu Klonlama

Her GitHub deposunun, depoyu bilgisayarınıza klonlamak için Git ile birlikte kullanılan belirli bir web adresi vardır. Kutular deposunun ana sayfasında, "Klonla veya indir" etiketli yeşil bir düğme vardır.

GitHub'daki "Klonla veya İndir" düğmesi.

Reklamcılık

Web adresini görmek için butona tıklayın. Depoyu klonladığımızda git komutuna iletmemiz gereken adres budur.

Deponun klonlanmasını istediğimiz dizine geçin ve ardından bu komutu kullanın. Terminal pencereniz destekliyorsa, web adresini kopyalayıp komuta yapıştırabilirsiniz. GNOME terminal penceresine yapıştırmak için Ctrl+Shift+V tuşlarına basın.

Git, uzak depoyu klonlar ve bilgisayarınızda yerel bir depo oluşturur. Bize "kutular" adlı bir dizine klonlandığını söylüyor.

Kutular dizini, git komutunu verdiğiniz dizinde oluşturulur. Kutular dizinine geçersek ve içindekilere bakarsak GitHub sayfasında gördüğümüz dosya ve klasörlerin aynı listesini görürüz.

Harika! Kaynak kodunu ve diğer dosyaları başarıyla bilgisayarımıza kopyaladık. Şimdi, uygulamayı oluşturmamız gerekiyor.

Uygulamayı Oluşturma

Uygulamayı oluşturmak için GitHub deposundaki talimatları izlemeliyiz. Bazen belirli bir kabuk dosyasını çalıştıracağız ve diğerlerini make çalıştıracağız. İzlediğimiz derleme talimatları bize make çalıştırmamızı söyledi.

Reklamcılık

make yardımcı programı, makefile'den bir dizi talimatı okur ve gerçekleştirir. Bu talimatlar make programı nasıl derleyeceğini ve birbirine nasıl bağlayacağını anlatır. make yönergeleri derleyiciye ve diğer derleme araçlarına iletir.

Kullanmamız söylenen komut iki kez make arayacak. Yapılacak ilk çağrı uygulamayı make ve ikincisi bir dizi test çalıştırır.

Yapı talimatlarının kullanmamızı söylediği komut:

 yap && test yap 

Birçok çıktı satırı, terminal penceresinde hızla kaydırılır. Bir dakika kadar sonra komut istemine geri döneceksiniz.

Kutuları Dağıtma Uygulaması

Uygulama oluşturuldu ve yürütülebilir bir ikili dosyamız var. Şimdi ikiliyi /usr/bin/ dizinine kopyalamamız gerekiyor. Bu, kullanmaya çalıştığımızda kabuğun onu bulmasını sağlar.

Reklamcılık

Bazı uygulamalar için yapmanız gereken tek şey bu olabilir. Diğer durumlarda, man sayfaları ve yapılandırma dosyaları gibi ek dosyaları dosya sistemindeki konumlara kopyalamanız gerekebilir. İkincisi, yeni uygulamamızla yapmamız gereken şey çünkü yapım talimatlarındaydı.

GitHub'dan dosya kopyalama komutları.

Bu komutları çalıştırmak için sudo kullanın. İlk komut bir man sayfasını man1 dizinine kopyalar:

 sudo cp doc/boxes.1 /usr/share/man/man1 

Ardından, global yapılandırma dosyasını /usr/share/ içindeki bir dizine kopyalayın:

 sudo cp kutuları-config /usr/share/boxes 

Son olarak, ikili dosyayı /usr/bin dizinine kopyalayın:

 sudo cp kaynağı/kutuları/usr/bin 

Kutuları Test Etme Uygulaması

Her şeyin işe yarayıp yaramadığını görelim! boxes komutu için man sayfasını açmayı deneyin.

 adam kutuları 

Bu cesaret verici! boxes komutunu nasıl kullanacağınızı anlatan bir kılavuz sayfası görürsünüz.

Man sisteminden çıkmak için “Q”ya basın ve boxes komutunu kullanmayı deneyin.

 echo Nasıl Yapılır Geek | kutular 

Ve yanıtı alıyoruz:

Reklamcılık

Bu, harcadığınız tüm çabayı göz önünde bulundurarak biraz bunaltıcı görünebilir, ancak bu alıştırmanın amacı, GitHub'dan bir depoyu geri çekme ve uygulamayı oluşturma konusunda size yol göstermekti.

boxes komutu, kendisine iletilen metni çok çeşitli çerçevelere sarmanıza olanak tanır. Bazıları kaynak kod dosyalarında yorum olarak kullanılabilir. Yukarıdaki biçim, örneğin, bir C kaynak kodu dosyasında bir yorum olarak çalışır. Diğerleri tamamen dekoratiftir. -d (tasarım) seçeneği, çerçevenin stilini seçmenize olanak tanır.

 echo Nasıl Yapılır Geek | kutular -d girdap
 echo Nasıl Yapılır Geek | kutular -d c-cmt2 

Aralarından seçim yapabileceğiniz uzun bir tasarım listesi var. Hepsini görmek için şu komutu kullanın:

 kutular -l | az

Yapı Tamamlandı

Kaynaktan oluşturma adımları genellikle basittir:

  • Depodaki derleme talimatlarını gözden geçirin.
  • Gerekli araçların kurulu olup olmadığını kontrol edin ve eksik olanları yükleyin.
  • Depoyu bilgisayarınıza klonlayın.
  • Genellikle make yazmak kadar basit olan derleme yönergelerini izleyin.
  • Dosyaları gerekli konumlara kopyalayın.

Yapı talimatlarında net olmayan adımlar varsa, projede soru gönderebileceğiniz bir forum veya topluluk olup olmadığına bakın. Uygulamanın bir web sitesi varsa, “Bize Ulaşın” sayfası olabilir. Box projesini yürüten geliştiricinin e-posta adresi box web sitesinin “Hakkında” sayfasındadır. Bu onun adına cömert bir jest ve daha geniş açık kaynak topluluğunun tipik bir örneği.

İLGİLİ: Geliştiriciler ve Meraklılar için En İyi Linux Dizüstü Bilgisayarlar