Linux'u belirli bir hedef için derleme

NFurkan

Hectopat
Katılım
4 Ağustos 2018
Mesajlar
983
Makaleler
1
Çözümler
7
Yer
TARDIS Main Console Room
Daha fazla  
Cinsiyet
Erkek
Merhaba, yabancı sitelere danışmadan önce buraya sormak istedim. Elimde 2 adet cihaz var Linux destekleyen, biri sun5i çipsetli ve mainline, diğeri Snapdragon 835 ve mainline değil. Ben bu kernelleri nasıl derleyebilirim? İnternette araştırdığımda var olan kerneli değiştirip derleneni otomatik olarak yerine geçiriyor. Ayrıca hedef çipseti de nasıl seçebileceğimi bulamadım. Bu konuda bilgili üyeler yardımcı olabilirlerse çok mutlu olurum.
 
Merhaba, yabancı sitelere danışmadan önce buraya sormak istedim. Elimde 2 adet cihaz var Linux destekleyen, biri sun5i çipsetli ve mainline, diğeri Snapdragon 835 ve mainline değil. Ben bu kernelleri nasıl derleyebilirim? İnternette araştırdığımda var olan kerneli değiştirip derleneni otomatik olarak yerine geçiriyor. Ayrıca hedef çipseti de nasıl seçebileceğimi bulamadım. Bu konuda bilgili üyeler yardımcı olabilirlerse çok mutlu olurum.
Nasıl yani? Belirli bir cihaz icin derlemek istiyorsaniz kernel'in o cihaza portlanmış halini alıp derlemeniz gerekiyor. Örnek olarak "xiaomi-sagit kernel source" gibi bir arama yapip kernel portuna ulasabilirsiniz.
Kernel derlemeyi ne icin istiyorsunuz?
 
Nasıl yani? Belirli bir cihaz icin derlemek istiyorsaniz kernel'in o cihaza portlanmış halini alıp derlemeniz gerekiyor. Örnek olarak "xiaomi-sagit kernel source" gibi bir arama yapip kernel portuna ulasabilirsiniz.
Kernel derlemeyi ne icin istiyorsunuz?
Linux kerneli derliyorum, Android kerneli değil. Ve bu mainline bir kernel, yani kernel.org'da commitlenmiş halde ancak nasıl hedefe özel derleyebiliyorum bilmiyorum.

SD835 telefonum var ve kaynakları buldum çekirdeği derlemek istiyorum ve Linux kuracağım üstüne. Ayrıca Allwinner A13'lü bir tabletim var onu da değerlendirmek için Linux kuracağım, ancak dediğim gibi kerneli derleyemedim.
 
Merhaba, yabancı sitelere danışmadan önce buraya sormak istedim. Elimde 2 adet cihaz var Linux destekleyen, biri sun5i çipsetli ve mainline, diğeri Snapdragon 835 ve mainline değil. Ben bu kernelleri nasıl derleyebilirim? İnternette araştırdığımda var olan kerneli değiştirip derleneni otomatik olarak yerine geçiriyor. Ayrıca hedef çipseti de nasıl seçebileceğimi bulamadım. Bu konuda bilgili üyeler yardımcı olabilirlerse çok mutlu olurum.
Gentoo uzerinde capras gelistirme ortami yaratip derleyebilirsin, yapmaya calistigin sey basit bir islem degil o yuzden bol bol dokuman okumaya hazir ol.
 
Gentoo uzerinde capras gelistirme ortami yaratip derleyebilirsin, yapmaya calistigin sey basit bir islem degil o yuzden bol bol dokuman okumaya hazir ol.
Nasıl basit bir işlem değil? Ubuntu veya Mac kullanarak yapamama sebebim nedir? Çünkü hazır Ubuntu sunucu ve mac duruyor. Ayrıca mainline olmayan sürümü Ubuntu'da derlemeye çalışmıştım baya basit bir işlemdi ancak kaynaklar 13 yıllık olduğu için derlenmiyordu.
 
Nasıl basit bir işlem değil? Ubuntu veya Mac kullanarak yapamama sebebim nedir? Çünkü hazır Ubuntu sunucu ve mac duruyor. Ayrıca mainline olmayan sürümü Ubuntu'da derlemeye çalışmıştım baya basit bir işlemdi ancak kaynaklar 13 yıllık olduğu için derlenmiyordu.
Aslinda Clang kullanarak capraz gelistirme ortamina gerek duymadan yapabilmen lazim ama daha once hic denemedim. Arastir biraz istersen.

Kaynak kodunu indirdikten sonra asagidaki gibi architecture belirtip yapabilmen lazim ancak pratigim yok hic.

export ARCH=arm
export ARCH=sparc
 
Aslinda Clang kullanarak capraz gelistirme ortamina gerek duymadan yapabilmen lazim ama daha once hic denemedim. Arastir biraz istersen.
Cross compiling yapılabiliyor evet. Tek sıkıntı Linux derlerken hedefi seçmeyi ve parametreleri ayarlamayı bilmiyor olmam. Ayrıca bunlar başka bir cihaz için derleneceklerinden dolayı nasıl paketleyeceğimi bilmiyorum. Sorun bu.
 
Cross compiling yapılabiliyor evet. Tek sıkıntı Linux derlerken hedefi seçmeyi ve parametreleri ayarlamayı bilmiyor olmam. Ayrıca bunlar başka bir cihaz için derleneceklerinden dolayı nasıl paketleyeceğimi bilmiyorum. Sorun bu.
Hedefi verdigim env degiskenleriyle belirliyorsun iste.
 
Hedefi verdigim env degiskenleriyle belirliyorsun iste.
Hedef mimariyi evet öyle belirliyoruz ancak ben hedef mimari değil hedef çipset/cihaz için hedef belirlemeyi soruyorum mainline Linux çekirdeğinde. Örneğin generic ARM için ayrı, sunxi cihazları için ayrı, sunxi cihazlarından sun4i için ayrı sun5i için ayrı cihaz targeti var. Bunu nasıl ayarlayabilirim? Bütün kaynağı indirmek zorunda mıyım?
 
Hedef mimariyi evet öyle belirliyoruz ancak ben hedef mimari değil hedef çipset/cihaz için hedef belirlemeyi soruyorum mainline Linux çekirdeğinde. Örneğin generic ARM için ayrı, sunxi cihazları için ayrı, sunxi cihazlarından sun4i için ayrı sun5i için ayrı cihaz targeti var. Bunu nasıl ayarlayabilirim? Bütün kaynağı indirmek zorunda mıyım?
Muhtemelen sistemle ilgili suruculeri make menuconfig komutunu verdikten sonra menuden secmen gerekiyordur, emin degilim.
 

Technopat Haberler

Geri
Yukarı