Results 1 to 2 of 2
Like Tree3Likes
  • 2 Post By sunbeam96

Thread: [POLISH] Kernel compilation HOW-TO

  1. [translate]    #1
    Senior Member
    Join Date
    Mar 2011
    Location
    Top Fucking Secret
    Posts
    180

    Default [POLISH] Kernel compilation HOW-TO

    THIS IS POLISH TRANSLATION OF TOM3Q'S HOW-TO

    Jest to moje własne tłumaczenie. Tłumaczenie to możecie rozpowszechniać, modyfikować, etc. Mam nadzieję, że komuś się przyda i zaznaczam, że przetłumaczenie pewnych specyficznych informatycznych wyrażeń nie jest proste.

    ZACZYNAMY!


    Potrzebne:

    • około 1GB wolnego miejsca na dysku na źródła
    • odpowiednie, działające narzędzia do kompilacji na ARM, to jest m.in. cross compiler


    Pobieranie i kompilacja kernela:

    Musimy pobrać źródła do katalogu na naszym komputerze wykorzystując np. git. Przechodzimy więc w terminalu/konsoli do odpowiedniego katalogu poleceniem
    Code:
    cd /odpowiednia/lokalizacja/
    u mnie jest to
    Code:
    cd /home/sunbeam/kernel-spica/
    Teraz musimy pobrać repozytorium initramfs
    Code:
    git clone git://github.com/tom3q/initramfs-3.0.git
    i repozytorium kernela
    Code:
    git clone git://github.com/tom3q/spica-3.0.git
    Wchodzimy do katalogu spica-3.0
    Code:
    cd spica-3.0
    Kolejnym krokiem będzie utworzenie skryptu o nazwie envsetup.sh. Do pliku wklejamy następujące polecenia:
    Code:
    #!/bin/sh
    export ARCH=arm
    export CROSS_COMPILE=your-cross-compilation-toolchain-prefix-here-
    export INITRAMFS_SOURCE_PATH=/sciezka/do/pobranego/initramfs-3.0
    Zapisujemy i nadajemy skryptowi prawa do uruchamiania:
    Code:
    chmod a+x envsetup.sh
    Importujemy envsetup.sh do powłoki (shell)
    Code:
    . envsetup.sh

    Teraz zaczynamy zabawę naszym jąderkiem ^^
    Code:
    make gt_i5700_defconfig
    UWAGA! Jeśli kompilujemy kernel dla Androida 4, wpisujemy:
    Code:
    make gt_i5700_ics_defconfig
    Przy pierwszej kompilacji konieczne jest utworzenie pliku zastępującego moduł wlan, dopóki ten nie zostanie skompilowany. (Inaczej kompilacja się nie powiedzie.)
    Code:
    touch ${INITRAMFS_SOURCE_PATH}/lib/modules/bcmdhd.ko
    Rozpoczynamy kompilację jądra. W miejsce x wstawiamy liczbę rdzeni procesora w naszym komputerze +1:
    Code:
    make -jx

    Na przykład dla 2 rdzeniowego procesora z Hyper-Threading (4 logiczne procesory) będzie to wyglądało tak:
    Code:
    make -j5
    Następnie kopiujemy wynikowy moduł/sterownik bcdmdhd.ko tam, gdzie pobraliśmy initramfs
    Code:
    cp drivers/net/wireless/bcmdhd/bcmdhd.ko /sciezka/do/initramfs/lib/modules/
    Budujemy initramfs (zbudowane zostanie tylko to, co zostało zmienione)
    Code:
    make
    Skompilowany kernel znajduje się w:
    Code:
    arch/arm/boot/zImage
    UWAGI:



    • skrypt envsetup.sh musi zostać zaimportowany za każdym razem, gdy pracujemy nad kernelem w nowym środowisku/shellu (np. nowa karta/okno konsoli)
    • przy każdej rekompilacji kernela nowy moduł bcmdhd musi zostać skopiowany do initramfs
    • plik konfiguracyjny kernela .config nie powinien być modyfikowany ręcznie, od tego jest menuconfig
    • jeżeli nie rozumiesz którejś części instrukcji (i nie jesteś w stanie znaleźć wyjaśnienia) to prawdopodobnie nie powinieneś jej czytać (ani wykonywać)
    • zwykle po zmianach uruchamianie polecenia make clean​ nie jest konieczne
    Last edited by tom3q; 05-02-2012 at 11:01 PM.
    LeshaK and seweryndolega like this.
    Nokia N9 with MeeGo Harmattan PR 1.3 with some improvements
    Samsung Galaxy Spica GT-i5700 with tom3q's awesome Cyanogenmod 7.2 alpha 7.9 - second phone in case if something goes wrong

  2. [translate]    #2
    Senior Member
    Join Date
    Mar 2011
    Location
    Top Fucking Secret
    Posts
    180

    Default

    Kompilowanie Androida w przygotowaniu.
    Nokia N9 with MeeGo Harmattan PR 1.3 with some improvements
    Samsung Galaxy Spica GT-i5700 with tom3q's awesome Cyanogenmod 7.2 alpha 7.9 - second phone in case if something goes wrong

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •