Android GCC toolchain (düz linux, android veya NDK) kullanarak bir yerli Linux ARM ikili inşa ettim."Böyle bir dosya veya dizin yok" Android cihazda linux ikili çalıştırmaya çalışıyor
PC'mden, adb kabuğuyla, Android 4 çalıştıran bir tablete bağlandım. Ben oraya yürütmeyi umuyordum diye, o aygıttaki/sistem/bin bileşenini "adb push" yazdım. Ben chmod 777 ile çalıştırılabilir olarak işaretledim.
Çalıştırmaya çalışırsam, "Böyle bir dosya veya dizin yok" alırdım.
Daha fazla bilgi: Küçük program fc ve fm lib'lerini kullanır. ARM araç zincirinin crt1'e sahip görünmemesi nedeniyle, bulduğum bir örnekte normalde başlangıç kodunu içerir, android yapısını içeren dosyaları aradık, crtbegin_dynamic ve crtend_dynamic'i bulduk, ancak _static karşılığı için çiftlerden biri eksikti, bu yüzden GCC'ye -statik geçmedim. "-nostdlib" ile kuruldu.
Sorun (lar) ne olabilir?
Yürütücünüzün bağımlılıklarını bulmak için nm veya benzerlerini kullanmanız gerekir, ancak gerçekçi bir şekilde, işleri zor yoldan yapmakta ısrar etmediğiniz sürece Android için yalnızca NDK gcc'yi kullanmanız gerekir. ** Unutmayın ki bu soru, gizemli bir şekilde, tamamen farklı bir konu üzerinde popüler bir cevap çekmiş olmasına rağmen, geliştirme makinesi ** için eksik kütüphaneler ile ilgisi yoktur. –