OS Blog

Xcode SDL2 Kütüphanesini Ekleme (C++) Tutorial (Eğitici Konu)

13.08.2015
2.427

Kısa adı SDL yani Simple Directmedia Layer framework üzerinde yeni coding dilleri arasında ön sıralarda yerini alan Xcode dili kullanarak bir deneme uygulaması yazıyoruz.

Xcode SDL2 Kütüphanesini Ekleme (C++) Tutorial (Eğitici Konu)

SDL2 için Xcode Yazma [Güncellendi@2019]

Xcode SDL2 ile ilgili bir eğitim makalesi hazırladım. Bu yazıda sizlerle SDL2 framework’ü Xcode’a nasıl ekleyip çalıştırabileceğinizden bahsedeceğim.

Öncelikle SDL2’yi indirmek için SDL (Simple DirectMedia Layer) web sitesine gidiyoruz.

SDL web page
SDL2 Download Sayfası

Sol alt köşedeki “Download” kısmından “SDL 2.0” veya sağ üst köşedeki “Get the current stable SDL version 2.0.3” linkine tıklayarak indirme sayfasına gidiyoruz.

sdl2.0.3 download page
SDL Kurulum Notları

Buradan “Developement Binaries” kısmından  “SDL2-2.0.3.dmg (Intel 10.5+)” linkine tıklayarak dosyayı bilgisayarımıza indiriyoruz. Daha sonra dosyayı çift tıklayarak açıyoruz. /Volumes klasörüne SDL2 ismiyle açılan dosya masaüstümüzde görüntülendikten sonra çift tıklayarak açıyoruz.

SDL2 dmg
SDL2 Kurulum

Klasörün içindeki SDL2.framework isimli dosyayı:

“/ Applications/Xcode.app/Contents/ Developer/Platforms/ MacOSX.platform/Developer/ SDKs/MacOSX10.10.sdk/ System/Library/ Frameworks”
“~/Library/Frameworks”

yollarına kopyalıyoruz.

Daha sonra kütüphanenin çalışabilmesi için iki dosyayı da imzalamamız gerekiyor. Yoksa yazdığımız kodlar çalışmayacaktır. Ayrıntılı bilgi için tıklayınız.

Xcode SDL2 için İmzalama işlemi için bir terminal penceresi açarak aşağıdaki kodları yazıyoruz:

1- sudo codesign -f -s – /Applications/Xcode.app /Contents/Developer/ Platforms/MacOSX.platform/ Developer/SDKs/ MacOSX10.10.sdk/System/ Library/Frameworks /SDL2.framework/SDL2

2- codesign -f -s – ~/Library/Frameworks/ SDL2.framework/SDL2

Artık Xcode SDL2 kütüphanesini kullanabiliriz. Bir deneme kodu yazıp çalışıp çalışmadığını test edebilirsiniz. Bunun için Xcode’u başlatıp;

xcode sdl2
Xcode Proje Oluşturma

Xcode Projesi Oluşturma

Create a new Xcode project” diyoruz. Sonra resimdeki gibi, projenin türünü seçmek için sol taraftaki template seçeneklerinden OSX>Application diyerek “Command Line Tool“u seçip next diyoruz:

xcode-template-selection
Xcode Proje İsim Verme

İkinci adımda projenin ve yazarın ismini ve kullanılacak dili (C++) seçiyoruz.

xcode-project-name
Xcode Choose File Path

Next diyerek projemizin kaydedileceği yeri seçiyoruz. Proje için bir klasör oluşturmanıza gerek yok girdiğiniz proje ismiyle proje dosyalarınızın içinde olacağı bir klasörü Xcode kendisi oluşturacaktır. Projeniz hazırlandıktan sonra Xcode aşağıdaki gibi “Build Settings” sekmesini açacaktır.

xcode-build-settings
Xcode SDL2 Buil Settings

Buradan SDL2.framework’ü projemize eklemek için “Build Phases” sekmesini tıklıyoruz.

xcode-buildphases-tab.png
Xcode Build Phases

Bu sekmede “Link Binary With Libraries” seçeneğinin yanındaki küçük oka tıklayarak genişletiyoruz. Burada yapacağımız işlem kütüphaneyi binary ile bağlamak olacaktır. Bunun için sol alt köşedeki (+) artı simgesine tıklayarak aşağıdaki pencereyi açıyoruz.

link-binary-xcode
SDL2 kütüphane ekleme

Yazının ilk kısmında framework olarak eklediğimiz SDL2.framework isimli kütüphaneyi bu listeden bularak “Add” butonuna tıklıyoruz.

Artık main.cpp dosyasında bir test kodu yazabiliriz, aşağıdaki pencerede gördüğünüz gibi kütüphaneyi içselleştirmek için “#include <SDL2/SDL.h>” şeklinde yani kütüphanenin isminden sonra bir foreslash yazıyoruz ve kullanmak istediğimiz header’ın ismini yazıyoruz.

xcode-SDL2-testcode
Xcode Header Satırı

Kodu çalıştırmak için sol üst köşedeki play butonuna veya Product>Run veya (⌘+R) tuş kombinasyonuyla derleyip inşa edebilirsiniz.

#include <iostream>
#include <SDL2/SDL.h>

int main(int argc, const char * argv[]) 
{
  if (SDL_Init(SDL_INIT_VIDEO!=0)) 
  {
  std::cout << "SDL_Init hatası: " << SDL_GetError() << std::endl; return 1; 
  }
std::cout << "Başarılı" << std::endl;
SDL_Quit();
return 0; 
}

Bir dahaki yazıda görüşmek dileğiyle…

ZİYARETÇİ YORUMLARI - 1 YORUM
  1. Jeremyger dedi ki:

    Hello. And Bye.

Bu web sitesi, bilgisayarınıza bilgi depolamak amacıyla bazı tanımlama bilgilerini kullanır.
Bu bilgilerin bir kısmı sitenin çalışmasında esas rolü üstlenirken bir kısmı ise kullanıcı deneyimlerinin iyileştirilmesine yardımcı olur.
Sitemizi kullanarak bu tanımlama bilgilerinin yerleştirilmesine izin vermiş olursunuz. Kişisel Verilerin Korunması,
Gizlilik Politikası ve Çerez (Cookie) Kullanımı İlkeleri hakkında detaylı bilgi için KVKK&GDPR sayfamızı inceleyiniz.
Omersahin.com.tr
Copyright | 2007-2021