Ruby Gem Kurulumunda SSL Hatası

Yeni öğrenmeye başladığım Ruby programlama dili ile basit bir UDP sunucu/istemci çifti yazmaya çalışıyorum.

RubyGems

İstemciden sunucuya büyük bir dosyayı ardışık düzende paketler halinde (pipelining) göndereceğim. Paketlerde bozulma olup olmadığını anlayabilmek için ayrıca ilgili paketin sağlamasını da (MD5) göndermem gerekiyor. Bunu Ruby’nin ‘bindata’ paketini (gem) kullanarak yapmayı düşünüyorum (pack/unpack ile uğraşmaktan daha basit görünüyor).

[Devamını Oku]

Qt5 Araç Takımına Giriş

Qt, birden çok platformu destekleyen bir grafiksel kullanıcı arayüzü geliştirme araç takımıdır. Genellikle GUI programları geliştirmek için kullanılsa da gelişmiş kütüphanesi GUI bileşenlerinin dışında birçok araç içermektedir. Qt, en çok KDE masaüstü ortamında, Opera ağ tarayıcısında ve Skype anlık mesajlaşma programlarında kullanılmasıyla bilinir.

Qt5 Logo

Qt5 hakkında başlangıç düzeyinde bilgi vermeye (ve öğrenmeye) çalışacağım ders dizisinin ilki olan bu derste Qt5 kitaplığına giriş yapmaya çalışacağım. Bu kısımda Qt5 kitaplığını Debian üzerinde kurup ilk küçük Qt5 uygulamamızı oluşturacağız.

İlk olarak Norveçli bir yazılım firması olan Trolltech tarafından geliştirilen Qt, daha sonra önce Nokia ve ardından da Finlandiyalı Digia şirketi tarafından satın alındı. Halen hem Digia hem de açık kaynaklı Qt Projesi tarafından geliştirilmeye devam ediyor. Açık kaynaklı Qt araç takımının web sitesine qt.io adresinden ulaşabilirsiniz.

[Devamını Oku]

Fedora Rawhide'dan Tek Bir Paketi Kurmak

Rawhide, Fedora Linux’un bir sonraki sürümünde yer alacak yazılım paketlerinin bir araya getirilip sınama amacıyla kullanıma sunulduğu paket deposudur.

Fedora Penguen

Neden Rawhide?

Herhangi bir sebeple (hata giderme, yeni özellikleri deneme vb.) kullanmakta olduğunuz bir uygulamanın en son sürümüne ihtiyaç duyuyor olabilir ve bir sonraki Fedora sürümünün çıkmasını beklemek istemeyebilirsiniz. Böyle durumlarda Rawhide imdadınıza yetişir.

[Devamını Oku]

C++'a Hızlı Giriş – 02 – İsim Uzayları (Namespaces)

C++‘ta isim uzayları, Java’daki paketler gibi, farklı kod parçaları arasındaki benzer adların çakışma sorununu çözmeye yardımcı olur. Örneğin, programınızda kullanmak üzere faktoriyel() isimli bir fonksiyon yazmış olalım. Diyelim ki bir süre sonra, bu işi bizim yazdığımız koddan daha etkili şekilde yapan harici bir kütüphane kullanmaya karar verdik ve bu yeni kütüphanedeki fonksiyonun adı da faktoriyel(). Bu durumda, faktoriyel(3) şeklinde bir çağrı yaptığımızda, derleyicinin bizim fonksiyonumuzu mu yoksa harici kütüphanedeki fonksiyonu mu çağıracağını bilme imkanı olmayacaktır.

[Devamını Oku]

C++'a Hızlı Giriş - 01 - Merhaba Dünya!

Başka (tercihen benzer) bir programlama dilini zaten bilip de C++ ile programlamaya hızlı bir giriş yapmak istiyorsanız ya da uzun süredir C++ kodu görmediğiniz/yazmadığınız için hızlı bir hatırlatmaya ihtiyacınız varsa işinize yarayabilir.

Ben yazacağım kodları linux altında g++ (gcc derleyicisinin c++ eklentisi) ile derleyeceğim. Aynı kodlar, başka işletim sistemlerinde ve/veya başka derleyiciler ile de sorunsuz derlenecek ve benzer çıktılar verecektir diye umuyorum. (:

[Devamını Oku]

SSH ile Git Bağlantısında 'Agent admitted failure to sign' Hatası

Fedora 18 üzerinde daha önce sorunsuz olarak gnome git hesabıma bağlanıp işlem yapabiliyorken, durduk yere şöyle bir hata almaya başladım (Durduk yere dedimse, hiç bir ayarı değiştirmediğimi kastediyorum; güncellemeler sırasında birşeyler değişmiş belli ki.):

$ git clone ssh://******@git.gnome.org/git/gnome-screenshot
Cloning into 'gnome-screenshot'...
Agent admitted failure to sign using the key.
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

[Devamını Oku]

vi ya da vim'de sözdizimi vurgulamayı etkinleştirmek

Vi ya da vim, çoğu linux dağıtımıyla birlikte gelen bir komut satırında kelime işleme uygulamasıdır. Düz metin dosyalarını düzenlemek için hızlı ve sade bir seçenek. Ayrıca iki satır C/C++ kodu yazıp gcc ile derlemek istediğinizde bir tümleşik geliştirme ortamı (ide) açmanıza gerek kalmadan işinizi görebilecek bir çözüm. Tabii ki programlama dilleri için sözdizimi vurgulama desteği de var.

[Devamını Oku]