GÖMÜLÜ YAZILIMIN olmazsa olmazı CROSS COMPILATION nedir?

Поділитися
Вставка
  • Опубліковано 19 січ 2025

КОМЕНТАРІ • 52

  • @ayazar
    @ayazar  3 місяці тому +6

    1. "clang" derleyicisi "kılenk" olarak da telaffuz edilmektedir.
    2. Kolayca çapraz derleme (veya başka C denemeleri) yapmak için godbolt.org u kullanabilirsiniz.

  • @tayyip6784
    @tayyip6784 2 місяці тому +1

    Gömülü sistemle henüz alakam yok. Başlık dikkatimi çektiği için bir bakayım dedim, büyüleyici bir anlatım var cidden :D

    • @ayazar
      @ayazar  2 місяці тому

      🪄🧙

  • @yunusesergun5274
    @yunusesergun5274 3 місяці тому +2

    Alper hocam, süper bir video olmuş, elinize sağlık.

    • @ayazar
      @ayazar  3 місяці тому +1

      Çok teşekkürler hocam :)

  • @cemalgulbeyaz
    @cemalgulbeyaz 3 місяці тому +1

    Anlatım için teşekkürler. Genelde windows üzeri C grubu ağırlıklı C# etliye sütlüye karışmadan derliyordum. Geçen yıldı galiba ffmpeg projesinin kütüphanelerinin Android ve IOS için derlenmesi gerekti, öyle uğraştırdı ki nerden düştüm bu cehenneme dedim ve başaramadan bıraktım :) Bu kütüphanelerde bir başka proje olan görüntü işleme projesi olan EMGUCV için gerekliydi.

    • @tandomrandom
      @tandomrandom 2 місяці тому

      Yakin zamanda ffmpeg i derledim gayetde rahatdi hic ugrastirmiyor. Readme dosyasini okursaniz goreceksiniz

    • @cemalgulbeyaz
      @cemalgulbeyaz 2 місяці тому

      @@tandomrandom Windowsda Windows için derlemede sorun olmadı, diğerleri için yani Android ve IOS için derlemede başarılı olamamıştım. Zaten benim büyük çaplı bir C++ projesini ilk derleyişimdi.

  • @sezginkarapinar5502
    @sezginkarapinar5502 3 місяці тому +2

    Çok açıklayıcı bir video olmuş 👍

    • @ayazar
      @ayazar  3 місяці тому +1

      Beğenmenize sevindim.

  • @kirilbeg
    @kirilbeg 3 місяці тому

    Ders gibi video olmuş elinize sağlık

  • @HackerBrucke
    @HackerBrucke 3 місяці тому

    Tertemiz, çok güzel bir anlatım olmuş.

  • @omeryakc1536
    @omeryakc1536 3 місяці тому +1

    Hocam ilaç gibi video. Elinize sağlık.

  • @isqrmn
    @isqrmn 3 місяці тому

    güzel içerik, temiz anlatım teşekkürler.

  • @gokhanozdemir8970
    @gokhanozdemir8970 2 місяці тому

    Sunumunu çok beğendim.

  • @kuraktarla1242
    @kuraktarla1242 2 місяці тому

    Güzel anlatım olmuş emeğinize sağlık

  • @utkumat
    @utkumat 3 місяці тому

    hocam ellerine sağlık

  • @myetis1990
    @myetis1990 3 місяці тому

    tebrik ederim alper hocam, cidden bu nüansları başta bilmeyince boşa kürek sallanabiliyor.

    • @ayazar
      @ayazar  3 місяці тому

      Teşekkürler

  • @ismailcivan
    @ismailcivan 2 місяці тому

    anlatim guzel...

    • @ayazar
      @ayazar  2 місяці тому

      Teşekkür ederim.

  • @stark9397
    @stark9397 3 місяці тому

    Her zaman ki gibi harika bir anlatım olmuş hocam. Stm32mp1 kartı aldım, distro package felan gömdüm. Şimdi ne yapmamı önerirsiniz hocam nasıl bir yol izlemem gerekir?

    • @ayazar
      @ayazar  3 місяці тому

      Teşekkürler, beğenmenize sevindim. Tavsiye vermek zor bir iş, hedeflerinizi de hesaba katmak lazım. FreeRTOS, Zephyr gibi RTOSlara bakabilir ya da Linux sistem programlama da çalışabilirsiniz, bilemedim 🤔

  • @MrTough-dw7ot
    @MrTough-dw7ot 3 місяці тому

    Hocam devamı gelsin :) arm işlemciler için birden fazla kütüphanesi olan bir projeyi derleyin :))

    • @ayazar
      @ayazar  3 місяці тому +1

      Bakarız, söz vermeyeyim :)

  • @tayyip6784
    @tayyip6784 2 місяці тому

    Aklıma gelen bir soruyu buradan sormak isterim. Güncel tüm x86 veya tüm arm mimarisi işlemcileri aynı komut setlerine mi sahiplerdir? Öyle ise performans farkı çekirdek sayısı ve frekanstan başka ne gibi değişkene bağlı olabilir?

    • @ayazar
      @ayazar  2 місяці тому

      Güzel soru. ISAlerin extensionları olabiliyor. Örneğin x86 tarafında SSE, ARM tarafında NEON gibi. Yani x86, arm gibi mimariler baz bir komut seti belirliyor, üreticiler bunları performans için genişletebiliyor. Bir de micro architecture konusu var, o ISA yı destekleyen işlemcinin nasıl yapıldığı ve performans için neleri desteklediği. Pipeline yapısı, branch prediction, out-of-order execution desteği gibi. Ayrıca işlemciden bağımsız olarak bellek ve cache organizasyonu ve hatta yongaların üretildiği teknoloji (nm) performans parametrelerini etkileyen şeyler.

  • @EmrahKAYNAR
    @EmrahKAYNAR 3 місяці тому

    vay be c içinde cross platform varmış ben bilmiyordum adamları tebrik etmek lazım mantığı nasıl kurgulamışlar acaba uygulamanın startını veren opcode bile farklı dataları nasıl okutmuşlar ilginç ve şaşırtıcı helal olsun millet neler yapıyor elma ile portakalı aynı dalda yetiştirmeye benziyor demek ki, opcodeları benzer olan platformlar için yapıyorlar herhalde yani ne bileyim beynim durdu helal olsun...

    • @onur-i0x
      @onur-i0x 3 місяці тому +1

      c en primitif dil zaten. olay syntax falan değil, compiler dizaynı. C kadar köklü ve tarihe oturmuş bir x dilini de bu şekilde güncel tutabilirlerdi.

    • @ayazar
      @ayazar  3 місяці тому

      "Elma portakal" benzetmesi iyimiş :) Aslında derleyici açısından bakınca daha zor kısımlar da var. Derleyiciyi de aşama aşama çalışan bir yazılım olarak düşünürsek dili anlayıp, optimize bir kod çıkartmak başlarda olan işlemler. Bunu yaptıktan sonra hedef mimariye göre kod üretmek adeta export almak gibi bir şey, elbette etkileyici ve iki cümleyle anlatılmayacak kadar detaylı... C çok eski bir dil olduğu için cross compilation kavramını uygulayan ilk dillerden biridir.

    • @EmrahKAYNAR
      @EmrahKAYNAR 3 місяці тому

      ​@@onur-i0x yani bu bir üst düzey script dili değil ki, cross platform yapması kolay olsun... işlemciye göre yazılımın tüm kodlarını vermen lazım yani atıyorum bir işlemcide 128 byte kodu ret belirtir diğerinde farklı birinde bitler ters okunur diğerinde farklı yani ne bileyim kütüphaneler kullanarak yaparsın onda bir problem yok sonuçta native yazılım ama makine kodu olduğunda adı üstünde makine kodu her işlemci kendi kafasına göre bir mimariye sahiptir örnek mesela
      MOV AX, 8

    • @EmrahKAYNAR
      @EmrahKAYNAR 3 місяці тому

      @@ayazar Açık konuşayım ben cross platform olduğunu hiç duymadım araştırmadım bile tek dosyada exe çalıştırıyor değil mi üstadım yani farklı farklı exe dosyaları değil javadaki universal apk gibi tek exe her yere at çalışsın.. yani gerçekten yapanları tebrik ediyorum...

    • @ayazar
      @ayazar  3 місяці тому

      @@EmrahKAYNAR C'deki durum Java'dan farklı. x86 Linux için ayrı ELF, riscv Linux için ayrı ELF, Windows için de EXE üretmek gerekiyor derlerken, videoda anlatmak istediğim bu. Clang gibi derleyiciler de birer program aslında, kendisi x86 üzerinde çalışıp ARM için kod üretiyor olabilir.

  • @berkwe_
    @berkwe_ 2 місяці тому

    Hocam biraz küçüğüm python c# c++ arduino ps javascript gibi dillerde yeterlice tecrübem de var. Ağ alanında da kendime güveniyorum ama bu bilgiyi paraya dökemiyorum. Ne yapmam gerek? Bug bounty yapmayı denemiştim birkaç kez fakat hackerone da falan hedefler fazla kompleks sistemler kullanıyor.

    • @ayazar
      @ayazar  2 місяці тому

      Zor bir soru :) Özellikle yaşınız küçükken bilgi birikiminizi arttırmaya yönelin bence şu aşamada paraya çok takılmayın derim.

    • @berkwe_
      @berkwe_ 2 місяці тому

      @@ayazar kral dahada arttırmam için para lazım ücretsiz kaynaklar çok da birşey öğretmiyor.

  • @halalnoob
    @halalnoob 3 місяці тому +1

    Tamda bu konuyu düşünüyordum youtube algoritması ne düşündüğümü biliyormu acaba

  • @freedomdo
    @freedomdo 2 місяці тому

    Cross compile için linux içinde toolchain indirip 20 yıldır zaten yapılıyordu. Konu ne ben hiç anlayamadım.

    • @ayazar
      @ayazar  2 місяці тому +1

      Kavramdan bahsetmek sadece. Özellikle alana yeni başlayan arkadaşlar duymamış oluyorlar doğal olarak.

  • @hydradragonantivirus
    @hydradragonantivirus 3 місяці тому

    Windows 7'ye driver geliştirince x64 bende diyorum neden böyle bir uyarı veriyordu.

  • @markyerger
    @markyerger 3 місяці тому

    Hocam android kernel derleme geliştirme videoları gelecekmi

    • @ayazar
      @ayazar  3 місяці тому +1

      Herhalde gelmez diye düşünüyorum :)

    • @tandomrandom
      @tandomrandom 2 місяці тому

      Canavar bir pc yoksa dusunme bile

  • @recoystv
    @recoystv 2 місяці тому

    üniversite kalitesinde

  • @MrTough-dw7ot
    @MrTough-dw7ot 3 місяці тому

    Hocam tamda linuxta hedef cihaz için cross compilation yapamaya çalışırken bu video geldi. 3 gündür uşraşıyorum umarım hallederim. Halledemezsem Lınkedın de size yazsam yardımcı olur musunuz?

    • @ayazar
      @ayazar  3 місяці тому +1

      Kolay gelsin. Takdir edersiniz ki herkese tek tek özel mesajla yardım etmem zor ama buradan sorarsanız biliyorsam cevaplarım ya da başkası cevaplar.

    • @MrTough-dw7ot
      @MrTough-dw7ot 3 місяці тому

      @@ayazar tamamdır hocam