Takip et

Ruby 2.1.0 ve Sinatra’nın Ubuntu 13 Üzerine RVM ile Kurulumu Kapsamlı Rehberi

Ruby 2.1.0 ve Sinatra’nın Ubuntu 13 Üzerine RVM ile Kurulumu Kapsamlı Rehberi Giriş Yazılım geliştirme dünyasında, özellikle web uygulamal

Ruby 2.1.0 ve Sinatra’nın Ubuntu 13 Üzerine RVM ile Kurulumu Kapsamlı Rehberi

Giriş

Yazılım geliştirme dünyasında, özellikle web uygulamaları alanında Ruby dili ve onun sunduğu ekosistem önemli bir yer tutar. Ruby on Rails gibi popüler bir çerçeveye ev sahipliği yapmasının yanı sıra, daha hafif ve esnek çözümler arayanlar için Sinatra gibi mikro-çerçeveler de sunar. Bu makale, belirli bir ortam ve versiyon kombinasyonu olan Ruby 2.1.0’ı Sinatra ile birlikte Ubuntu 13 işletim sistemi üzerine, Ruby Version Manager (RVM) kullanarak nasıl kuracağınızı adım adım detaylı bir şekilde açıklayacaktır.

Ubuntu 13, güncel bir işletim sistemi olmasa da, belirli projeler veya eski sistemlerle uyumluluk gereksinimleri nedeniyle hala bu versiyon üzerinde çalışma ihtiyacı doğabilir. Benzer şekilde, Ruby 2.1.0 da Ruby’nin daha eski bir kararlı sürümüdür ve belirli uygulamaların bu versiyona bağımlılığı olabilir. RVM ise, sisteminizde birden fazla Ruby sürümünü ve her bir sürüm için ayrı gemset’leri (paket koleksiyonları) yönetmenizi sağlayan paha biçilmez bir araçtır. Bu sayede, farklı projeler için farklı Ruby ve gem versiyonlarını çakışma olmadan kullanabilirsiniz.

Bu rehberin amacı, hem RVM’nin gücünü kullanarak temiz ve izole bir kurulum gerçekleştirmek hem de Ruby 2.1.0 ve Sinatra’nın temel bir web uygulamasını Ubuntu 13 üzerinde nasıl çalıştıracağınızı göstermektir. Her adım, olası sorunları minimize etmek ve kurulum sürecini anlaşılır kılmak için detaylı olarak açıklanacaktır.

Ön Gereksinimler ve Sistem Güncellemesi

Herhangi bir yazılım kurulumuna başlamadan önce, sisteminizin güncel olduğundan ve gerekli temel paketlere sahip olduğundan emin olmak kritik öneme sahiptir. Bu, olası bağımlılık sorunlarını önler ve daha sorunsuz bir kurulum süreci sağlar.

Sistem Güncellemesi

Öncelikle, Ubuntu 13 sisteminizin paket listelerini güncelleyelim ve mevcut paketleri en son sürümlerine yükseltelim. Bu işlem, sisteminizin kararlılığını artırır ve yeni yazılımların gerektirdiği bağımlılıkların doğru bir şekilde karşılanmasına yardımcı olur.

Bir terminal açın (Ctrl+Alt+T) ve aşağıdaki komutları sırasıyla çalıştırın:

sudo apt-get update
sudo apt-get upgrade

* sudo: Bu komut, normal bir kullanıcının yönetici (root) ayrıcalıklarıyla komut çalıştırmasını sağlar. Sistem genelinde değişiklikler yapacağımız için bu gereklidir. Şifreniz istendiğinde, kullanıcı şifrenizi girin.
* apt-get: Ubuntu gibi Debian tabanlı sistemlerde paket yönetimi için kullanılan güçlü bir komut satırı aracıdır.
* update: Bu komut, yerel paket indeksini uzak depolardaki en son bilgilerle senkronize eder. Bu, hangi paketlerin mevcut olduğunu ve hangi sürümlerinin bulunduğunu öğrenmek için gereklidir.
* upgrade: Bu komut, update ile güncellenen paket indeksine göre, sisteminizde yüklü olan tüm paketleri en son kararlı sürümlerine yükseltir. Bu işlem sırasında yeni paketler yüklenebilir veya mevcut paketler kaldırılabilir.

Bu komutların tamamlanması biraz zaman alabilir. İşlem sırasında herhangi bir onay istenirse ‘E’ veya ‘Y’ tuşuna basarak devam edin.

Gerekli Temel Paketlerin Kurulumu

RVM ve Ruby’nin sorunsuz bir şekilde kurulabilmesi için bazı temel geliştirme araçlarına ve kütüphanelerine ihtiyacımız olacaktır. Bu paketler, Ruby’nin kaynak koddan derlenmesi ve RVM’nin kendisinin çalışması için gereklidir.

Aşağıdaki komutu kullanarak bu paketleri yükleyin:

sudo apt-get install curl git gnupg2 build-essential libssl-dev libreadline-dev zlib1g-dev

* curl: Uzak sunuculardan veri indirmek için kullanılan bir komut satırı aracıdır. RVM kurulum script’ini indirmek için kullanılacaktır.
* git: Versiyon kontrol sistemi. RVM’nin bazı bileşenlerini veya Ruby’nin kaynak kodunu indirmek için kullanılabilir, ayrıca yazılım geliştirme için vazgeçilmezdir.
* gnupg2: GnuPG (GNU Privacy Guard) araç setinin bir parçasıdır. RVM’nin kurulum script’inin güvenliğini doğrulamak için kullanılan GPG anahtarlarını yönetmek ve doğrulamak için gereklidir.
* build-essential: Bu paket, C/C++ derleyicileri (GCC), make ve diğer gerekli derleme araçlarını içeren bir koleksiyondur. Ruby’nin kaynak koddan derlenmesi için temel bir gereksinimdir.
* libssl-dev: OpenSSL kütüphanesinin geliştirme dosyalarını içerir. Ruby’nin HTTPS gibi güvenli ağ iletişimlerini desteklemesi için gereklidir.
* libreadline-dev: Readline kütüphanesinin geliştirme dosyalarıdır. Ruby’nin interaktif konsolu (IRB) gibi araçlar için komut geçmişi ve düzenleme özellikleri sağlar.
* zlib1g-dev: Zlib sıkıştırma kütüphanesinin geliştirme dosyalarıdır. Ruby’nin sıkıştırılmış dosyalarla (örneğin gem paketleri) çalışabilmesi için gereklidir.

Bu paketlerin kurulumu da biraz zaman alabilir. Kurulum tamamlandığında, RVM ve Ruby kurulumuna geçmeye hazır olacaksınız.

RVM (Ruby Version Manager) Kurulumu

RVM, sisteminizde birden fazla Ruby sürümünü kolayca kurmanıza, yönetmenize ve projeleriniz arasında geçiş yapmanıza olanak tanıyan bir komut satırı aracıdır. Bu, farklı projelerin farklı Ruby versiyonlarına bağımlı olduğu durumlarda son derece faydalıdır.

RVM GPG Anahtarının İçe Aktarılması

RVM kurulum script’ini indirmeden ve çalıştırmadan önce, script’in orijinalliğini ve bütünlüğünü doğrulamak için RVM’nin GPG (GNU Privacy Guard) anahtarını sisteminize içe aktarmanız önerilir. Bu, potansiyel güvenlik risklerine karşı bir önlemdir.

Aşağıdaki komutu kullanarak RVM’nin GPG anahtarını içe aktarın:

gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3

* gpg: GnuPG programını çağırır.
* --keyserver hkp://keyserver.ubuntu.com: Anahtarın hangi sunucudan alınacağını belirtir. Ubuntu’nun anahtar sunucusu genellikle güvenilir bir kaynaktır.
* --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3: Belirtilen anahtar kimliğine sahip anahtarı alır. Bu, RVM geliştiricisinin kamu anahtarıdır.

Bu adım, script’in kimliğini doğrulamanıza yardımcı olur. Eğer bu komut bir hata verirse (örneğin, anahtar sunucusuna ulaşılamıyorsa), farklı bir anahtar sunucusu deneyebilir veya anahtarı doğrudan RVM web sitesinden indirip manuel olarak içe aktarabilirsiniz. Ancak genellikle bu komut sorunsuz çalışır.

RVM Kurulum Script’ini Çalıştırma

GPG anahtarını içe aktardıktan sonra, RVM’yi yüklemek için resmi kurulum script’ini indirebilir ve çalıştırabilirsiniz. Bu script, RVM’yi kullanıcı dizininize (genellikle ~/.rvm) kurar.

Aşağıdaki komutu kullanın:

\curl -sSL https://get.rvm.io | bash -s stable

* \curl: Sistemde curl için bir alias tanımlanmış olsa bile, doğrudan curl komutunu çalıştırmasını sağlar.
* -sSL: curl için parametrelerdir:
* -s (silent): Sessiz modu etkinleştirir, ilerleme çubuğunu veya hata mesajlarını göstermez.
* -S (show-error): Sessiz modda bile hataları gösterir.
* -L (location): Eğer hedef URL bir yönlendirme içeriyorsa, curl yönlendirmeyi takip eder.
* https://get.rvm.io: RVM kurulum script’inin indirildiği URL’dir.
* |: Pipe operatörü. curl komutunun çıktısını (yani kurulum script’inin içeriğini) bash komutuna girdi olarak yönlendirir.
* bash -s stable: bash komutunu çalıştırır ve stable parametresini RVM’ye iletir, bu da RVM’nin kararlı sürümünü yüklemesini sağlar.

Bu komutun tamamlanması biraz zaman alabilir, çünkü RVM dosyalarını indirir ve sisteminizde gerekli yapılandırmaları yapar.

RVM’yi Shell Ortamına Yükleme

RVM kurulumu tamamlandıktan sonra, RVM komutlarının terminalinizde kullanılabilir olması için RVM’yi mevcut shell oturumunuza yüklemeniz gerekir. RVM, genellikle .bashrc veya .profile gibi kabuk yapılandırma dosyalarınıza otomatik olarak bir satır ekler, ancak bu değişikliğin mevcut oturumda geçerli olması için manuel olarak kaynak göstermeniz gerekebilir.

Aşağıdaki komutu çalıştırın:

source ~/.rvm/scripts/rvm

* source: Belirtilen script dosyasını mevcut shell oturumunda çalıştırır. Bu, script’in tanımladığı fonksiyonların ve ortam değişkenlerinin geçerli oturumda kullanılabilir olmasını sağlar.
* ~/.rvm/scripts/rvm: RVM’nin ana script dosyasıdır.

Bu komutu her yeni terminal oturumu başlattığınızda çalıştırmamak için, RVM kurulum script’i genellikle bunu otomatik olarak ~/.bashrc veya ~/.profile dosyanıza ekler. Doğrulama için bu dosyaları kontrol edebilirsiniz. Eğer eklenmemişse, yukarıdaki source komutunu bu dosyalardan birinin sonuna ekleyerek kalıcı hale getirebilirsiniz. Değişiklikleri kaydettikten sonra, yeni bir terminal oturumu açmanız veya source ~/.bashrc komutunu çalıştırmanız gerekir.

RVM Kurulumunu Doğrulama

RVM’nin başarılı bir şekilde kurulup kurulmadığını ve shell ortamınıza doğru bir şekilde yüklendiğini doğrulamak için aşağıdaki komutu kullanın:

rvm -v

Bu komut, yüklü RVM sürümünü göstermelidir (örneğin, rvm 1.29.12 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]). Eğer böyle bir çıktı alırsanız, RVM başarıyla kurulmuştur. Eğer “command not found” (komut bulunamadı) hatası alırsanız, önceki adımları (özellikle source komutunu) dikkatlice kontrol edin.

Ruby 2.1.0 Kurulumu (RVM ile)

RVM başarıyla kurulduktan sonra, şimdi asıl amacımız olan Ruby 2.1.0 sürümünü yükleyebiliriz. RVM, farklı Ruby sürümlerini izole bir şekilde yönetme yeteneği sayesinde bu işlemi oldukça basitleştirir.

Ruby Bağımlılıklarının Kurulumu

Ruby’nin kaynak koddan başarıyla derlenebilmesi için bazı ek sistem kütüphanelerine ihtiyacı vardır. RVM, bu bağımlılıkları otomatik olarak tespit edip yüklemek için kullanışlı bir komut sağlar.

Aşağıdaki komutu çalıştırın:

rvm requirements install

Bu komut, sisteminizdeki eksik Ruby derleme bağımlılıklarını (örneğin, OpenSSL, Zlib, Readline, LibYAML, Autoconf vb.) kontrol eder ve bunları apt-get kullanarak yüklemeye çalışır. Bu adım, özellikle Ubuntu 13 gibi daha eski bir sistemde, Ruby’nin sorunsuz bir şekilde derlenmesi için kritik öneme sahiptir. Komutun çalışması biraz zaman alabilir ve yönetici şifrenizi girmeniz gerekebilir.

Ruby 2.1.0 Sürümünü Kurma

Şimdi, RVM kullanarak Ruby 2.1.0’ı yükleyebiliriz. RVM, belirtilen Ruby sürümünü indirir, derler ve kullanıcı dizininizdeki kendi izole konumuna kurar.

Aşağıdaki komutu kullanın:

rvm install ruby-2.1.0

* rvm install: RVM’ye belirtilen Ruby sürümünü yüklemesini söyler.
* ruby-2.1.0: Yüklenecek Ruby sürümünü belirtir.

Bu işlem oldukça zaman alabilir (10-30 dakika veya daha fazla), çünkü Ruby’nin kaynak kodunun indirilmesi, derlenmesi ve kurulması gerekir. Terminalde derleme sürecinin ilerlemesini göreceksiniz. Sabırla bekleyin.

Ruby 2.1.0’ı Varsayılan Olarak Ayarlama

Ruby 2.1.0 başarıyla yüklendikten sonra, onu mevcut shell oturumunuz için kullanmaya başlayabilir ve aynı zamanda RVM’ye bu sürümü gelecekteki tüm yeni shell oturumları için varsayılan olarak ayarlamasını söyleyebilirsiniz.

Aşağıdaki komutu çalıştırın:

rvm use ruby-2.1.0 --default

* rvm use ruby-2.1.0: Mevcut shell oturumunuz için Ruby 2.1.0’ı aktif hale getirir.
* --default: Bu bayrak, RVM’nin bu Ruby sürümünü gelecekte açılacak tüm yeni terminal oturumları için varsayılan olarak ayarlamasını sağlar. Bu sayede, her yeni oturumda rvm use komutunu çalıştırmanız gerekmez.

Ruby Kurulumunu Doğrulama

Ruby 2.1.0’ın başarıyla kurulduğunu ve doğru sürümün aktif olduğunu doğrulamak için aşağıdaki komutları kullanın:

ruby -v
gem env

* ruby -v: Bu komut, aktif Ruby sürümünü göstermelidir. Çıktı ruby 2.1.0p0 (2013-12-25 revision 44468) [x86_64-linux] veya benzeri bir şey olmalıdır.
* gem env: Bu komut, RubyGems ortam değişkenleri hakkında ayrıntılı bilgi sağlar. Özellikle RUBY VERSION ve INSTALLATION DIRECTORY gibi alanları kontrol ederek Ruby’nin RVM tarafından yönetilen doğru konuma kurulduğundan emin olabilirsiniz (örneğin, ~/.rvm/rubies/ruby-2.1.0).

Bu adımlarla Ruby 2.1.0, Ubuntu 13 sisteminize RVM aracılığıyla başarılı bir şekilde kurulmuş ve yapılandırılmış olmalıdır.

Sinatra Kurulumu ve Basit Bir Uygulama

Ruby 2.1.0 başarıyla kurulduktan sonra, şimdi hafif ve esnek bir web çerçevesi olan Sinatra’yı kurabilir ve basit bir web uygulaması oluşturabiliriz. Sinatra, daha küçük projeler veya API’ler için idealdir ve Ruby’nin web geliştirme yeteneklerini keşfetmek için harika bir başlangıç noktasıdır.

Bundler’ı Anlamak ve Kurmak

Ruby projelerinde bağımlılıkları yönetmek için Bundler adında bir araç kullanılır. Bundler, projenizin ihtiyaç duyduğu tüm gem’leri (Ruby kütüphaneleri) izler ve doğru sürümlerinin yüklü olduğundan emin olur. Bu, farklı projelerin farklı gem versiyonlarına ihtiyaç duyması durumunda çakışmaları önler.

Öncelikle, Bundler’ı gem olarak yüklememiz gerekiyor:

gem install bundler

Bu komut, Bundler gem’ini aktif Ruby sürümünüz (yani Ruby 2.1.0) için yükleyecektir.

Proje Dizini Oluşturma

Sinatra uygulamamız için bir proje dizini oluşturalım. Bu, uygulamanın dosyalarını düzenli tutmamızı sağlar.

mkdir my_sinatra_app
cd my_sinatra_app

* mkdir my_sinatra_app: my_sinatra_app adında yeni bir dizin oluşturur.
* cd my_sinatra_app: Oluşturulan dizine geçer.

Gemfile Oluşturma

Şimdi, projemizin bağımlılıklarını tanımlayan bir Gemfile oluşturacağız. Bu dosya, Bundler’ın hangi gem’leri yüklemesi gerektiğini bilmesini sağlar.

touch Gemfile

Ardından, favori metin düzenleyicinizle (örneğin, nano, vim veya gedit) Gemfile dosyasını açın ve aşağıdaki içeriği ekleyin:

source 'https://rubygems.org'

gem 'sinatra'
gem 'thin' # Sinatra uygulamasını çalıştırmak için hafif bir web sunucusu

* source 'https://rubygems.org': Gem’lerin hangi kaynaktan indirileceğini belirtir. RubyGems.org, Ruby gem’leri için resmi depodur.
* gem 'sinatra': Projemizin Sinatra gem’ine bağımlı olduğunu belirtir.
* gem 'thin': Sinatra uygulamasını çalıştırmak için önerilen hafif ve hızlı bir web sunucusu olan Thin’i de ekliyoruz. Bu, geliştirme ortamında uygulamayı çalıştırmak için kullanışlıdır.

Dosyayı kaydedin ve kapatın.

Gem’leri Bundler ile Yükleme

Gemfile‘ı tanımladıktan sonra, Bundler’ı kullanarak belirtilen gem’leri yükleyebiliriz.

bundle install

* bundle install: Bundler’ı çağırır ve Gemfile‘da listelenen tüm gem’leri (ve onların bağımlılıklarını) indirip kurar. Bu işlem, Ruby 2.1.0’ın gem dizinine yüklenir.
* Bu komut ayrıca, yüklü gem’lerin tam versiyonlarını ve bağımlılıklarını kilitleyen bir Gemfile.lock dosyası oluşturur. Bu dosya, projenin farklı geliştiriciler arasında veya farklı ortamlarda tutarlı bağımlılık setleriyle çalışmasını sağlar.

Bu komutun tamamlanması da biraz zaman alabilir, çünkü Sinatra ve Thin’in yanı sıra onların tüm bağımlılıkları da indirilir ve derlenir.

Basit Bir Sinatra Uygulaması Oluşturma

Şimdi, my_sinatra_app dizininde basit bir Sinatra uygulaması oluşturalım. Bu uygulama, web tarayıcısından gelen isteklere yanıt verecektir.

app.rb adında yeni bir dosya oluşturun:

touch app.rb

Ardından, app.rb dosyasını metin düzenleyicinizle açın ve aşağıdaki kodu ekleyin:

require 'sinatra'

Ana sayfa için bir GET isteği tanımlar

get '/' do "Merhaba, Dünya! Ruby 2.1.0 ve Sinatra ile Ubuntu 13 üzerinde!" end

Dinamik bir URL segmenti ile GET isteği tanımlar

get '/merhaba/:ad' do "Merhaba, #{params['ad']}! Nasılsın?" end

Uygulamanın çalışacağı varsayılan portu belirt (isteğe bağlı, Thin sunucusu için)

set :port, 4567 # Varsayılan olarak 4567 portunu kullanır

* require 'sinatra': Sinatra kütüphanesini uygulamaya dahil eder.
* get '/' do ... end: Kök URL’ye (/) yapılan bir HTTP GET isteğine nasıl yanıt verileceğini tanımlar. Bu durumda, basit bir metin dizesi döndürür.
* get '/merhaba/:ad' do ... end: /merhaba/ ile başlayan ve ardından dinamik bir segment (:ad) içeren bir URL’ye yapılan GET isteğine yanıt verir. params['ad'] ile bu dinamik değeri alabilir ve yanıt içinde kullanabiliriz.

Dosyayı kaydedin ve kapatın.

Sinatra Uygulamasını Çalıştırma

Uygulamayı çalıştırmak için, my_sinatra_app dizininde olduğunuzdan emin olun ve aşağıdaki komutu kullanın:

bundle exec ruby app.rb

* bundle exec: Bu komut, Bundler’ın projenin Gemfile.lock dosyasında belirtilen gem versiyonlarını kullanarak ruby app.rb komutunu çalıştırmasını sağlar. Bu, uygulamanın doğru bağımlılıklarla çalışmasını garanti eder.
* ruby app.rb: Ruby yorumlayıcısını kullanarak app.rb dosyasını çalıştırır.

Uygulama başarıyla başlatıldığında, terminalde aşağıdakine benzer bir çıktı görmelisiniz:

[2024-01-01 12:00:00] INFO  WEBrick::HTTPServer#start: pid=1234 port=4567
== Sinatra (v2.1.0) has taken the stage on 4567 for development with backup from Thin

(Not: Sinatra’nın varsayılan olarak kullandığı sunucu WEBrick veya Thin olabilir, yüklediğiniz gem’lere ve Sinatra versiyonuna bağlıdır.)

Bu çıktı, Sinatra uygulamanızın varsayılan olarak 4567 portunda çalıştığını gösterir.

Uygulamayı Test Etme

Uygulamanız çalışırken, web tarayıcınızdan veya curl komutunu kullanarak test edebilirsiniz.

1. Web Tarayıcınızdan:
* Tarayıcınızı açın ve adres çubuğuna http://localhost:4567/ yazın. “Merhaba, Dünya! Ruby 2.1.0 ve Sinatra ile Ubuntu 13 üzerinde!” mesajını görmelisiniz.
* Ardından, http://localhost:4567/merhaba/kullanici adresini ziyaret edin. “Merhaba, kullanici! Nasılsın?” mesajını görmelisiniz.

2. Terminalden curl ile:
* Yeni bir terminal penceresi açın (uygulamanızın çalıştığı terminali kapatmayın).
* Aşağıdaki komutları çalıştırın:

curl http://localhost:4567/
    curl http://localhost:4567/merhaba/ali

İlk komut “Merhaba, Dünya! Ruby 2.1.0 ve Sinatra ile Ubuntu 13 üzerinde!” çıktısını, ikinci komut ise “Merhaba, ali! Nasılsın?” çıktısını vermelidir.

Uygulamayı durdurmak için, uygulamanın çalıştığı terminale dönün ve Ctrl+C tuş kombinasyonuna basın.

Sorun Giderme (Troubleshooting)

Kurulum sürecinde veya uygulama çalıştırılırken bazı yaygın sorunlarla karşılaşabilirsiniz. İşte bu sorunlardan bazıları ve olası çözümleri:

1. GPG Anahtarı İçe Aktarma Sorunları

* Sorun: gpg --keyserver komutu bir hata veriyor veya anahtarı alamıyor.
* Çözüm:
* İnternet bağlantınızı kontrol edin.
* Farklı bir anahtar sunucusu deneyin: gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
* Güvenlik duvarı veya proxy ayarlarınızın GPG iletişimini engellemediğinden emin olun.

2. RVM “command not found” Hatası

* Sorun: rvm -v veya diğer rvm komutları çalışmıyor.
* Çözüm:
* source ~/.rvm/scripts/rvm komutunu çalıştırdığınızdan emin olun.
* Bu komutu ~/.bashrc veya ~/.profile dosyanıza eklediyseniz, yeni bir terminal oturumu açın veya source ~/.bashrc komutunu çalıştırın.
* RVM kurulum script’inin başarılı bir şekilde tamamlandığını kontrol edin.

3. Ruby Derleme Hataları (rvm install ruby-2.1.0)

* Sorun: Ruby’yi yüklerken derleme hataları alıyorsunuz (örneğin, “missing header files”, “cannot find -lcrypto”, “OpenSSL missing”).
* Çözüm:
* rvm requirements install komutunu çalıştırdığınızdan ve tüm bağımlılıkların yüklendiğinden emin olun. Bu komut eksik olanları yüklemeye çalışacaktır.
* Gerekirse sudo apt-get install ile eksik olabilecek ek geliştirme kütüphanelerini (örneğin libyaml-dev, libffi-dev) manuel olarak yükleyin.
* Derleme loglarını dikkatlice inceleyin (genellikle terminalde gösterilir) ve hangi kütüphanenin eksik olduğunu veya hangi hatanın oluştuğunu anlamaya çalışın.
* Ubuntu 13’ün eski bir sürüm olması nedeniyle, bazı kütüphanelerin güncel versiyonları RVM’nin beklentileriyle çakışabilir. Bu durumda, daha spesifik paket versiyonlarını aramanız gerekebilir.

4. bundle install Sorunları

* Sorun: bundle install çalışırken hatalar alıyorsunuz (örneğin, “Could not find gem ‘sinatra’ in any of the sources”, “SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B”).
* Çözüm:
* İnternet bağlantınızı kontrol edin.
* Gemfile‘ınızdaki source 'https://rubygems.org' satırının doğru olduğundan emin olun.
* SSL sertifika sorunları için, sisteminizin sertifika paketlerinin güncel olduğundan emin olun: sudo apt-get install ca-certificates.
* Bazen, bundle config --global mirror.https://rubygems.org https://rubygems.org komutu yardımcı olabilir (ancak bu genellikle daha yeni Ruby sürümlerinde ortaya çıkan bir sorundur).

5. Sinatra Uygulaması Başlamıyor veya Hata Veriyor

* Sorun: bundle exec ruby app.rb komutu hata veriyor veya uygulama başlamıyor.
* Çözüm:
* app.rb dosyanızdaki Ruby kodunun sözdizimi hataları içerip içermediğini kontrol edin.
* Terminaldeki hata mesajlarını dikkatlice okuyun. Genellikle hangi satırda ve ne tür bir hata olduğunu belirtir.
* Uygulamanın çalışmaya çalıştığı portun (varsayılan 4567) başka bir uygulama tarafından kullanılmadığından emin olun. Gerekirse set :port, 5000 gibi bir satır ekleyerek farklı bir port deneyebilirsiniz.
* Gemfile‘daki sinatra ve thin gem’lerinin yüklü olduğundan emin olun (bundle install komutunun başarılı olduğunu kontrol edin).

6. Ubuntu 13’e Özel Notlar

* Ubuntu 13, artık resmi olarak desteklenmeyen eski bir işletim sistemidir. Bu, bazı paketlerin depolarında bulunmayabileceği veya güncel sürümlerinin olmayabileceği anlamına gelir. Nadir durumlarda, eski paketleri manuel olarak indirip kurmanız gerekebilir.
* Sistem güvenliği açısından, desteklenmeyen bir işletim sistemi kullanmak risklidir. Eğer mümkünse, daha güncel bir Ubuntu sürümüne yükseltmeyi düşünebilirsiniz. Ancak bu makalenin kapsamı dışındadır ve mevcut gereksinimlerinize bağlıdır.

Bu sorun giderme ipuçları, karşılaşabileceğiniz yaygın engelleri aşmanıza yardımcı olmalıdır. Her zaman terminaldeki hata mesajlarını dikkatlice okumak ve Google’da aramak, çözüme ulaşmanın en hızlı yoludur.

Sonuç

Bu kapsamlı rehberde, Ruby 2.1.0’ı ve Sinatra’yı Ubuntu 13 işletim sistemi üzerine RVM (Ruby Version Manager) kullanarak nasıl kuracağınızı adım adım öğrendiniz. RVM’nin sağladığı esneklik sayesinde, sisteminizde farklı Ruby versiyonlarını izole bir şekilde yönetebilir, böylece farklı projeler için farklı bağımlılık setlerini sorunsuzca kullanabilirsiniz.

Kurulum sürecinde, öncelikle sisteminizi güncelledik ve gerekli temel geliştirme paketlerini yükledik. Ardından, RVM’yi kurduk ve onu shell ortamımıza entegre ettik. RVM’nin bağımlılık yöneticisini kullanarak Ruby 2.1.0’ı başarıyla derledik ve varsayılan Ruby versiyonu olarak ayarladık. Son olarak, Bundler’ı kullanarak Sinatra ve Thin gem’lerini kurduk ve basit bir “Merhaba, Dünya!” uygulaması oluşturup çalıştırdık.

Bu kurulum, Ruby geliştirme yolculuğunuz için sağlam bir temel oluşturur. Sinatra gibi hafif bir çerçeve ile web uygulamaları geliştirmeye başlayabilir veya RVM’nin sunduğu yetenekleri kullanarak daha karmaşık Ruby projelerine adım atabilirsiniz. Unutmayın, RVM’nin gücü, farklı Ruby sürümleri ve gemset’leri arasında kolayca geçiş yapabilme yeteneğidir, bu da onu her Ruby geliştiricisinin araç setinde vazgeçilmez kılar.

Bu rehberin, belirli bir ortam ve versiyon kombinasyonuyla çalışanlar için değerli bir kaynak olmasını umuyoruz. Ruby ve Sinatra dünyasına hoş geldiniz!

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.