İçeriğe atla

CMake

CMake
CMake logosu
Geliştirici(ler)Andy Cedilnik, Bill Hoffman, Brad King, Ken Martin, Alexander Neundorf
İlk yayınlanma2000 (24 yıl önce) (2000)
Güncel sürüm3.30.5[1] Bunu Vikiveri'de düzenleyin / 9 Ekim 2024
Geliştirme durumuAktif
Programlama diliC, C++[2]
İşletim sistemiÇapraz-platform
TürProgramlama aracı
LisansYeni BSD lisansı
Resmî sitesihttps://cmake.org
Kod deposu Bunu Vikiveri'de düzenleyin

CMake, derleyiciden bağımsız olarak, yazılım inşası otomasyonu, testi, paketleme ve yüklenmesi için kullanılan çapraz-platform ve açık kaynak kodlu yazılımdır. Çoklu kütüphane kullanan uygulamaları ve dizin hiyerarşisini destekler. CMake bir inşa yazılımı (buıld system) değildir, kodu build etmez, onun yerine yerli inşa sistemlerinin ihtiyacı olan şeyi, inşa betiklerini (buıld script) oluşturur. Apple Xcode, Make, Microsoft Visual Studio, Ninja gibi yerli (native) inşa ortamlarıyla birlikte kullanılır. Kullanılması için yalnızca bir C++ derleyicisi yeterlidir.

Temel kullanım

Yükleme

$ wget --quiet https://github.com/Kitware/CMake/releases/download/v3.30.0/cmake-3.30.0-linux-x86_64.sh
$ ls
cmake-3.30.0-linux-x86_64.sh
$ chmod u+x cmake-3.30.0-linux-x86_64.sh
# ./cmake-3.30.0-linux-x86_64.sh --help
$ ./cmake-3.30.0-linux-x86_64.sh --prefix=/usr/local --exclude-subdir --skip-license
$ which cmake
/usr/local/bin/cmake
$ cmake --version
cmake version 3.30.0

CMake suite maintained and supported by Kitware (kitware.com/cmake).

CMake ile bir programı build etme

$ git clone git@gitHostWebsite.com:awesomeUser/awesomeLibrary.git
$ ls
awesomeLibrary
$ cmake -S awesomeLibrary -B build
$ cmake --build build
$ cmake --install build

Kaynakça

  1. ^ "CMake 3.30.5 available for download" (İngilizce). 9 Ekim 2024. Erişim tarihi: 13 Ekim 2024. 
  2. ^ "The CMake Open Source Project on OpenHub". OpenHub. 9 Ağustos 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Nisan 2016. 

Dış bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">OpenSUSE</span> topluluk destekli Linux dağıtımı

openSUSE ( ), eskiden SUSE Linux, ana destekçisi SUSE olan bir GNU/Linux dağıtımıdır. "Leap" sürümü, ticari amaçlı geliştirilen SUSE Linux Enterprise Server ve SUSE Linux Enterprise Desktop için bir taban ve deneme ortamı oluşturur. Leap, ticari SUSE Linux ürünlerine doğrudan yükseltme imkanı sunar. En popüler dağıtımlardan biridir. Geliştirilmesinin odak noktası, kullanıcı dostu bir masaüstü ve zengin özellikli sunucu ortamı sağlarken, yazılım geliştiriciler ve sistem yöneticileri için kullanılabilir açık kaynaklı araçlar sunmaktır.

<span class="mw-page-title-main">Oracle Solaris</span>

Solaris, ilk olarak Sun Microsystems tarafından geliştirilmiş, UNIX tabanlı bir işletim sistemidir. 1993 yılında halefi olan SunOS işletim sisteminin yerini almıştır. Ocak 2010'da Oracle firmasının Sun firmasını satın almasıyla Oracle Solaris olarak anılmaya başlanmıştır.

<span class="mw-page-title-main">Gelişmiş Paketleme Aracı</span>

Gelişmiş Paketleme Aracı, Debian GNU/Linux ve Debian tabanlı dağıtımlarda kullanılan paket yönetim sistemidir. APT, önceden derlenmiş dosyalardan ya da kaynak kodlarının derlenmesiyle yazılım paketlerinin alınmasını, yapılandırılmasını ve kurulumunu otomatikleştirerek yazılım yönetme sürecini basitleştirmeyi sağlar.

<span class="mw-page-title-main">Make</span>

Make dosyaları bir formdan diğerini çevirme işlemini otomatikleştiren bir araçtır. Bu işlemi, çevrilecek programların ihtiyaç duyacağı diğer programları kontrol ettikten sonra gerekli programları çalıştırarak çevirme işlemini gerçekleştirir. Çevrilen programı çalıştırmak için ihtiyaç duyulan diğer programlara bağımlılıklar denir. Unix/Linux tabanlı işletim sistemlerinde, kaynak kodu nesne koduna derlerken ve nesne kodlarını çalıştırılabilir (executable) ve kütüphane (library) dosyalarına bağlarken (linking) sıklıkla kullanılır. Bağımlılık grafiğini çıkarmak için "Makefile" ismi verilen bir dosya kullanır ve shell'e geçirilmek üzere kullanılan betikleri (script) oluşturur.

PTLsim, x86 işlemcilerinin iç yapısını taklit eden bir benzetimliktir. Intel x86 programlarının gerçek bir işlemcide nasıl çalışacağını denemek ve mikroişlemcinin iç yapısında yapılan değişikliklerin ne tür etkiler yaratacağını gözlemek amacıyla kullanılır.

<span class="mw-page-title-main">GNU C Library</span>

GNU C Library, bilinen adıyla glibc, GNU Tasarısı'nın C standart kütüphanesi uyarlamasıdır. Adına rağmen artık doğrudan C++ desteği bulunur. 1990'ların başında Özgür Yazılım Vakfı tarafından GNU işletim sistemi için geliştirilmeye başlanmıştır.

uname

uname (veya unix name) - Unix ve Unix benzeri işletim sistemleri bir yazılım konsol programı olup, sistem hakkında bilgi verir. Geçerli makine ve üzerinde çalışdığı işletim sistemi hakkında isim, sürüm ve diğer ayrıntıları yazdırır. uname sistem çağrısı ve komut PWB / UNIX ile ilk kez ortaya çıktı. Her ikisi de POSIX tarafından belirtilir.

GeckoLinux, openSUSE tabanlı bir Linux dağıtımıdır. OpenSUSE Leap'e dayanan Static, ve openSUSE Tumbleweed'e dayanan Rolling olmak üzere iki farklı sürümü yayımlanmaktadır.

<span class="mw-page-title-main">Ghidra</span>

Ghidra serbest ve açık kaynaklı Ulusal Güvenlik Ajansı (NSA) tarafından geliştirilen ters mühendislik aracı. Yazılım Mart 2019'da RSA Konferansı'nda yayınlandı; kaynaklar bir ay sonra GitHub'da yayınlandı. Ghidra, birçok güvenlik araştırmacısı tarafından IDA Pro'nun rakibi olarak görülüyor. Yazılım, GUI için Swing çerçevesi kullanılarak Java'da yazılmıştır. Derleyici bileşeni C ++ ile yazılmıştır. Ghidra eklentileri Java veya Python'da geliştirilebilir.

Deepfake pornografi veya yapay montaj pornografi, porno aktör veya aktrislerinin yüzlerine deepfake teknolojisi uygulanarak başka birinin yüzünü yerleştirmek suretiyle üretilen pornografik görüntülerdir. Bu teknoloji, yüzü yerleştirilen kişinin rızası alınmadan kullanılarak şantaj aracına dönüştürülebilir.

<span class="mw-page-title-main">0 A.D. (video oyunu)</span>

0 AD, Wildfire Games tarafından geliştirilmiş özgür ve açık kaynaklı gerçek zamanlı bir strateji oyunudur. M.Ö. 500 ile M.Ö. 1 ve M.S. 1 ile M.S. 500 tarihlerine odaklanmış tarihi savaş ve ekonomi oyunudur. Oyun çoklu platformdur. Windows, macOS, Linux, FreeBSD ve OpenBSD platformlarında oynanabilir. Oyun motorunun kaynak kodu için GNU GPLv2 lisansı ve oyun tasarımı ve müziği için CC BY-SA lisansı kullanan tamamen özgür yazılım ile özgür medya şeklinde hazırlanmıştır.

T2 SDE açık kaynaklı bir Linux dağıtımı kitidir. Ağırlıklı olarak René Rebe tarafından geliştirilmiştir.

Açık kaynak yazılım hareketi, daha geniş açık işbirliği kavramının bir parçası olarak, yazılımların bir kısmı veya tamamı için açık kaynak lisanslarının kullanımını destekleyen bir harekettir. Açık kaynak hareketi, açık kaynak yazılım kavramını/fikrini yaymaya başlamıştır. Açık kaynak hareketi felsefesini destekleyen programcılar, yazılım geliştirme için gönüllü olarak programlama kodu yazarak ve değiş tokuş ederek açık kaynak topluluğuna katkıda bulunurlar. "Açık kaynak" terimi, hiç kimsenin düzenlenmiş kodu paylaşmayan bir gruba karşı ayrımcılık yapmamasını veya başkalarının önceden düzenlenmiş çalışmalarını düzenlemesini engellememesini gerektirir. Yazılım geliştirmeye yönelik bu yaklaşım, herkesin açık kaynak kodunu almasına ve değiştirmesine olanak tanır. Bu değişiklikler, yazılımla çalışan kişilerden oluşan açık kaynak topluluğu içindeki geliştiricilere geri dağıtılır. Bu sayede kod değişikliğine katılan tüm bireylerin kimlikleri ortaya çıkarılmakta ve kodun zaman içinde dönüşümü belgelenmektedir. Bu yöntem, belirli bir kod parçasının sahipliğini oluşturmayı zorlaştırır, ancak açık kaynak hareketi felsefesiyle uyumludur. Bu hedefler, yüksek kaliteli programların üretimini ve açık kaynak teknolojisini geliştirmek için benzer düşünceye sahip diğer insanlarla işbirliği içinde çalışmayı teşvik eder.

<span class="mw-page-title-main">Android-x86</span>

Android-x86, Open Handset Alliance tarafından geliştirilen Android mobil işletim sisteminin RISC tabanlı ARM çipleri yerine x86 işlemcili cihazlarda çalışmasını sağlayan, resmi olmayan bir açık kaynaklı bir projedir.

<span class="mw-page-title-main">RPCS3</span> PlayStation 3 yazılımı için emülatör

RPCS3, Windows, Linux, FreeBSD ve MacOS sistemlerinde çalışan PlayStation 3 için ücretsiz ve açık kaynaklı bir konsol emulatoru ve hata ayıklayıcısıdır. PlayStation 3 oyunlarının ve yazılımlarının kişisel bir bilgisayarda oynatılmasına ve hatalarının ayıklanmasına olanak tanır. Program C++ dilinde yazılmıştır ve X86-64 CPU'larında çalışabilmektedir. Arka uç oluşturucuları olarak OpenGL ve Vulkan'ı içeriyior.

OpenWindows, SunView, NeWS ve X Window System protokollerini birleştiren Sun Microsystems iş istasyonları için tasarlanmış ve artık geliştirilmesi devam etmeyen bir masaüstü ortamıdır. OpenWindows, Solaris 9'da Common Desktop Environment (CDE) ve GNOME 2.0 lehine kaldırılıncaya kadar SunOS 4 ve Solaris işletim sistemlerinin sonraki sürümlerine dahil edildi.

<span class="mw-page-title-main">Homebrew (paket yöneticisi)</span>

Homebrew, Apple'ın işletim sistemi macOS ve Linux için geliştirilmiş, yazılım kurulumunu basitleştiren ücretsiz ve açık kaynaklı bir yazılım paketi yönetim sistemidir. Ad, kullanıcının zevkine bağlı olarak Mac'te yazılım oluşturma fikrini önermeyi amaçlamaktadır. Başlangıçta Max Howell tarafından yazılan paket yöneticisi, Ruby on Rails topluluğunda popülerlik kazandı ve genişletilebilirliği için övgü aldı. Homebrew, kullanım kolaylığı ve komut satırı arayüzüne entegrasyonu için önerilmiştir. Homebrew, Software Freedom Conservancy'nin kar amacı gütmeyen bir proje üyesidir ve tamamen ücretsiz gönüllüler tarafından yürütülmektedir.

<span class="mw-page-title-main">AppImage</span>

AppImage, uygulamayı yüklemek için superuser izinlerine ihtiyaç duymadan taşınabilir yazılımı Linux üzerinde dağıtmak için kullanılan bir biçimdir. Ayrıca "upstream paketleme" olarak da bilinen, uygulama geliştiricileri için Linux dağıtımından bağımsız ikili yazılım dağıtımına izin vermeye çalışır. İlk olarak 2004'te klik adı altında piyasaya sürüldü, sürekli geliştirildi, ardından 2011'de PortableLinuxApps ve daha sonra 2013'te AppImage olarak yeniden adlandırıldı.

<span class="mw-page-title-main">Void Linux</span>

Void Linux, sıfırdan tasarlanan ve uygulanan X Binary Package System (XBPS) paket yöneticisini ve "runit init" sistemini kullanan bağımsız bir Linux dağıtımıdır. İkili çekirdek blobları hariç, temel kurulum tamamen özgür yazılımdan oluşur ancak kullanıcılar özel yazılım yüklemek için özgür olmayan resmi bir depoya erişebilir.

<span class="mw-page-title-main">GoboLinux</span>

GoboLinux, en belirgin özelliği geleneksel Linux dosya sisteminin yeniden düzenlenmesi olan bir Linux dağıtımıdır. Çoğu Unix benzeri sistem gibi Dosya Sistemi Hiyerarşi Standardını takip etmek yerine, bir GoboLinux sistemindeki her programın, tüm dosyalarının bulunabileceği kendi alt dizin ağacı vardır. Böylece, bir "Foo" programının tüm özel dosyaları ve kütüphaneleri /Programs/Foo dizininde, bu programın ilgili sürümü altında bulunur. Örneğin, yaygın olarak bilinen GCC derleyici paketinin 8.1.0 sürümü /Programs/GCC/8.1.0. dizini altında bulunur.