Результат выполнения компиляции по предложенному варианту от sasamy:
забавно, но все промежуточные файлы компилируются с адекватными размерами, чепуха начинается тут:
почемуто после выполнения этой операции получается тот самый злополучный размер у linux.bin, равный 3076 Мб, но смущает вот что:
после выполнения:
размер linux.bin.gz = 5247247 байт, т.е. 5 Мб
неужели возможно 3Гб сжать в 5 Мб, если только исходный файл не забит "0" например? Думаю - может ключи objcopy?!
проверил свое последнее предположение про "0" и офигел, я оказался прав.
файл от Павла заполнен начиная с адреса 0х0000 0000, то, что получается заполнен "0" с 0х0000 0000 по 0хС000 7FFF, а дальше начинается то, что у Павла начинается с 0х0000 0000. Какие предложения???? я теряюсь в догадках???
что за файл такой загадочный? может мне тоже надо..
из того, что делал выше - повторюсь:
buildroot сгенерил кросскомпилятор
путь до него прописал в шелле
там же прописал архитектуру ARCH=arm
взял нативное ядро с кернел.орг, развернул
make bla-la_defconfig
make menuconfig
make uImage
ядро нормального размера, опознается и грузится
где у вас прописаны эти 3 гигабайта?
внутри linux.bin:):):) решение нашел, его предлагал sasamy в неведомой мне ветке, все собралось нормально. Теперь хожу по граблям с SD, почти все как описано в этой теме, но я никак не нащупаю свою главную граблю
не, все гораздо проще и сложнее, сложнее т.к. опыта мало, я только знакомлюсь, можно сказать, с линуксом. Проще, потому что сам дурак - надо логи читать:) Оказалось нескольким файлам надо было дать разрешение на выполнение (chmod +x), сейчас выяснилось что не хватает libfakeroot.so. Думаю - допинаю потихоньку, спасибо всем огромное, что не отказываете в помощи.
а можно запостить сюда найденное решение?
я натолкнулся на ту же ситуацию, когда попытался собрать ядро 2.6.36-rc6 (лежащее в vmware) с помощью /Code Sourcery/arm-2011.03
получаю linux.bin размером 3.150 гб, который сжимается зипом до 5.4 мб.
Земените команду в скрипте на такую
../u-boot-2010.09/tools/mkimage -A arm -O linux -T kernel -C none -a 0x70008000 -e 0x70008000 -n "Linux Kernel Image" -d ./arch/arm/boot/zImage zlinux
и закоментируйте
#gzip -c -9 linux.bin > linux.bin.gz
#../u-boot-2010.09/tools/mkimage -A arm -O linux -T kernel -C gzip -a 0x70008000 -e 0x70008000 -n "Linux Kernel Image" -d linux.bin.gz zlinux
смысл в том что тут arch/arm/boot/zImage лежит нормальный имидж самаораспаковывающийся.