Takip et

CentOS 6’da Kaynaktan Node.js’i NPM ile Derleme

# CentOS 6’da Node.js ve npm’yi Kaynaktan Derleme

CentOS 6 sunucunuzda Node.js ve npm’yi kurmanız mı gerekiyor? Paket yöneticisi kullanmak yerine kaynaktan derleme, size en son sürümleri ve özelleştirme olanağı sunar. Ancak, bu süreç biraz karmaşık olabilir. Bu makalede, CentOS 6’da Node.js ve npm’yi kaynaktan derlemeyi adım adım, yeni başlayanlardan ileri seviye kullanıcılara kadar herkesin anlayabileceği şekilde açıklayacağız. Eski bir sistemde bu işlemi gerçekleştirmenin zorluklarını ve performans optimizasyonunu ele alacağız.

Öğrenme Yol Haritası:

* Yeni Başlayan: Adım adım kurulum, basit bir “Merhaba Dünya” uygulaması.
* Orta Seviye: Gerçek dünya senaryoları, optimizasyon ipuçları, farklı Node.js sürümlerini yönetme.
* İleri Seviye: Performans analizi, edge case’ler, özel derleme seçenekleri.

1. Temel Kavramlar: Node.js, npm ve CentOS 6

Node.js, JavaScript’i sunucu tarafında çalıştırmanıza olanak tanıyan açık kaynaklı, çapraz platform bir JavaScript çalışma zamanıdır. npm (Node Package Manager), Node.js için paket yöneticisidir ve binlerce kütüphane ve modüle erişmenizi sağlar. CentOS 6, eski bir Linux dağıtımıdır ve güncelleme desteği sınırlıdır. Bu nedenle, Node.js’yi kaynaktan derlemek, en son sürümleri ve gerekli bağımlılıkları elde etmenin en güvenilir yoludur. Bu süreç, daha yeni dağıtımlara göre daha fazla manuel müdahale gerektirir.

2. CentOS 6’da Hazırlık: Bağımlılıkları Kurma

Node.js’yi derlemek için, sisteminizde çeşitli geliştirme araçlarının ve kütüphanelerin bulunması gerekir. Bunlar, derleyici, make, g++ (veya clang++), python ve diğer bazı temel paketlerdir. CentOS 6’da bu paketleri yum paket yöneticisi ile kurabiliriz:

sudo yum groupinstall "Development Tools"
sudo yum install gcc-c++ make python

Bu komutlar, derleme sürecine ihtiyaç duyulan temel araçları kuracaktır. Eğer hata alırsanız, internet bağlantınızı kontrol edin ve yum update komutunu çalıştırmayı deneyin. gcc-c++ yerine clang++ da kullanabilirsiniz; performans farklılıkları olabilir, deneyerek en iyisini bulabilirsiniz.

3. Node.js Kaynak Kodunu İndirme ve Derleme

Node.js’nin resmi web sitesinden (https://nodejs.org/) en son kararlı sürümün kaynak kodunu indirebilirsiniz. Alternatif olarak, wget kullanarak doğrudan komut satırından indirebilirsiniz (sürüm numarasını güncel sürümle değiştirin):

wget https://nodejs.org/dist/v16.21.1/node-v16.21.1.tar.gz

İndirilen dosyayı açın ve derleme işlemini başlatın:

tar -xzf node-v16.21.1.tar.gz
cd node-v16.21.1
./configure
make
sudo make install

./configure komutu, sisteminizi kontrol eder ve derleme için gerekli ayarları yapar. make komutu, kaynak kodunu derler ve sudo make install komutu, derlenmiş dosyaları sisteminize yükler. Bu işlem oldukça uzun sürebilir ve sisteminizin işlemci gücüne bağlı olarak değişir.

4. npm’nin Doğrulama ve Kullanımı

Node.js kurulumundan sonra, npm otomatik olarak kurulmuş olmalıdır. Kurulumun doğru çalıştığını doğrulamak için aşağıdaki komutu çalıştırın:

npm -v

Bu komut, kurulu npm sürümünü ekrana yazdıracaktır. Eğer npm kurulu değilse, tekrar Node.js kurulum adımlarını kontrol etmeniz gerekebilir. npm’yi kullanarak paketleri kurmak için aşağıdaki gibi bir komut kullanabilirsiniz:

npm install express

Bu komut, popüler bir web framework’ü olan Express.js’i kuracaktır.

5. Gerçek Dünya Senaryosu: Bir Web Sunucusu Oluşturma

Şimdi, kurduğumuz Node.js ve npm’yi kullanarak basit bir web sunucusu oluşturalım. Öncelikle, bir proje dizini oluşturun ve içine server.js adında bir dosya oluşturun. Bu dosyaya aşağıdaki kodu yazın:

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Merhaba Dünya!\n');
});

server.listen(port, hostname, () => {
  console.log(Sunucu ${hostname}:${port} adresinde çalışıyor);
});

Bu kod, basit bir HTTP sunucusu oluşturur ve “Merhaba Dünya!” mesajını görüntüler. Dosyayı kaydedin ve aşağıdaki komutla sunucuyu çalıştırın:

node server.js

Tarayıcınızda http://127.0.0.1:3000 adresine giderek sunucunun çalıştığını doğrulayabilirsiniz.

6. Performans Optimizasyonu: Derleme Seçenekleri

Node.js’yi derlerken, performansı etkileyebilecek çeşitli seçenekler mevcuttur. Örneğin, --with-intl=small-icu seçeneği, uluslararasılaşma desteğini küçültür ve derleme süresini kısaltır. Ayrıca, daha fazla çekirdek kullanmak için -j seçeneğini kullanabilirsiniz (örneğin, make -j4). Sisteminizin kaynaklarına göre bu sayıyı ayarlayabilirsiniz. Fakat, çok fazla çekirdek kullanmak her zaman daha hızlı sonuç vermez, deneyerek en uygun sayıyı bulmanız gerekebilir. ./configure komutunu çalıştırmadan önce bu seçenekleri kullanabilirsiniz:

./configure --with-intl=small-icu
make -j4

Bu, derleme sürecini hızlandırabilir ve kaynak kullanımını azaltabilir. Ancak, bu seçenekler her zaman tüm sistemlerde aynı performans artışını sağlamayabilir.

7. İleri Seviye Konular: Edge Case’ler ve Hata Ayıklama

Eski bir sistemde derleme yapmanın bazı zorlukları vardır. Bazı kütüphaneler CentOS 6’da çalışmayabilir veya beklenmedik hatalara yol açabilir. Bu durumda, hata mesajlarını dikkatlice inceleyin ve eksik bağımlılıkları kurmaya çalışın. ldd komutu, bir programın hangi kütüphanelere bağımlı olduğunu gösterir ve sorun gidermede yardımcı olabilir. Ayrıca, Node.js’nin farklı sürümlerini yönetmek için nvm (Node Version Manager) gibi araçları kullanabilirsiniz. Bu araç, farklı Node.js sürümlerini aynı anda yönetmenize ve aralarında geçiş yapmanıza olanak tanır.

8. Sonuç: CentOS 6’da Node.js ve npm Kurulumu

Bu makalede, CentOS 6’da Node.js ve npm’yi kaynaktan derleme sürecini adım adım açıkladık. Bu yöntem, en son sürümleri kullanmanıza ve sisteminizi özelleştirmenize olanak tanır. Ancak, eski bir sistemde bu işlemin zorluklarını ve performans optimizasyonunun önemini de vurguladık. Her zaman, olası sorunlara karşı önlem almak ve hata ayıklama için gerekli araçları kullanmak önemlidir. Bu süreçte karşılaşabileceğiniz sorunlar için Fatih Soysal’ın bloguna (https://fatihsoysal.com) göz atabilirsiniz.

Sıkça Sorulan Sorular:

1. Node.js’yi güncellemek için ne yapmalıyım? Kaynak kodu tekrar indirerek ve derleyerek güncelleyebilirsiniz.
2. npm kurulumunda hata alırsam ne yapmalıyım? Hata mesajını dikkatlice inceleyin ve eksik bağımlılıkları kurun. İnternet bağlantınızı kontrol edin.
3. Farklı Node.js sürümlerini nasıl yönetirim? nvm (Node Version Manager) gibi araçları kullanabilirsiniz.
4. Derleme süreci çok uzun sürüyor, ne yapabilirim? Daha fazla işlemci çekirdeği kullanmayı deneyin (make -jN, N çekirdek sayısı).
5. CentOS 6 yerine daha yeni bir dağıtım kullanmalı mıyım? Güvenlik güncellemeleri ve daha iyi destek için daha yeni bir dağıtım kullanmanız önerilir.

Yazar: Fatih Soysal

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

Gönder

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.
Mobil sürümden çık