Hirdetés

Új hozzászólás Aktív témák

  • Peter789

    senior tag

    szerk: látom sikeresen megborította a fórum motort ez a pár kiemelés, úgyhogy több bekezdést csak scroll-ozva lehet elolvasni... lol :N

    egyelőre feladtam az openwrt témát, és visszatértem az alap kernelhez. yaffs helyett jffs2 fájlrendszert toltam alá, és ugyanazokat a hibákat szórja, csak kicsit másfajta hibaüzenetek formájában. erősen arra gyanakszom, hogy az mtd driver körül lesz a kaki, ezért gondoltam összemazsolázok egy újabb kernel verziót (3.2-rc1) hátha megoldja, viszont itt már a fordításnál elakadok...

    arm@ubuntu:~/ARM/kernel/linux-3.2-rc1$ make
    CHK include/linux/version.h
    CHK include/generated/utsrelease.h
    make[1]: `include/generated/mach-types.h' is up to date.
    CC kernel/bounds.s
    cc1: error: unrecognized command line option "-mlittle-endian"
    cc1: error: unrecognized command line option "-mapcs"
    cc1: error: unrecognized command line option "-mno-sched-prolog"
    cc1: error: unrecognized command line option "-mno-thumb-interwork"
    kernel/bounds.c:1:0: error: unknown ABI (aapcs-linux) for -mabi= switch
    kernel/bounds.c:1:0: error: bad value (armv4t) for -march= switch
    kernel/bounds.c:1:0: error: bad value (arm9tdmi) for -mtune= switch
    make[1]: *** [kernel/bounds.s] Error 1
    make: *** [prepare0] Error 2

    ez sikerült rá gugliznom: [link]
    szóval állítólag a cross compiler-t nem találja. ez mondjuk azért furcsa, mert ha összebarmolom a Makefile-ban a CROSS_COMPILE paramétert, akkor sokkal egyértelműbben adja tudtomra, hogy valóban a fordító nincsen meg:

    arm@ubuntu:~/ARM/kernel/linux-3.2-rc1$ make
    make: arm-linux-uclibc-gcc: Command not found
    CHK include/linux/version.h
    CHK include/generated/utsrelease.h
    make[1]: `include/generated/mach-types.h' is up to date.
    CC kernel/bounds.s
    /bin/sh: arm-linux-uclibc-gcc: not found
    make[1]: *** [kernel/bounds.s] Error 127
    make: *** [prepare0] Error 2[/M]

    egyből 2 problémába ütköztem: 1. nem igazán tudom hogy mi lenne a pontos PATH a fordítóhoz, pontosan melyik részére kell mutatnia hogy jó legyen, 2. a linken (és neten máshol is csak ilyet találtam) használt export parancsot nem jegyzi meg az ubuntu (11.04 vmware-ben) - pedig azt írja hogy még újra is kell indítani a terminált > amíg nem indítom újra addig ott van az env-ben amit beírok, de ha újraindítom akkor eltűnik. akkor ez hogy is van, mit rontok el vagy értek félre? és mi legyen akkor a CROSS_COMPILE paraméter értéke?

    2 cross compiler csomag van most a gépen - az első az openembed oldaláról van, a 2.6.21-es onnan letöltött kernel szépen le is fordul vele ahogy kell:

    (M)arm@ubuntu:/usr/local/arm/4.2.2-eabi$ ls -ltr
    total 28
    drwxrwxrwx 5 arm arm 4096 2007-10-11 18:10 gmp
    drwxrwxrwx 5 arm arm 4096 2007-10-11 18:10 mpfr
    drwxrwxrwx 2 arm arm 4096 2007-10-11 18:24 etc
    drwxrwxrwx 2 arm arm 4096 2007-10-11 18:24 sbin
    drwxrwxrwx 12 arm arm 4096 2007-10-11 18:32 usr
    drwxrwxrwx 2 arm arm 4096 2007-10-11 18:38 lib
    drwxrwxrwx 2 arm arm 4096 2007-10-11 18:38 bin[/M]

    a másodikat már csak utólag raktam fel, hátha... azthiszem 4.5-ös verziószámot írt install közben:

    (M)sudo apt-get install gcc
    ...
    arm@ubuntu:/usr/arm-linux-gnueabi$ ls -ltr
    total 12
    drwxr-xr-x 2 root root 4096 2011-11-26 15:32 bin
    drwxr-xr-x 2 root root 4096 2011-11-26 15:32 lib
    drwxr-xr-x 31 root root 4096 2011-11-26 15:32 include[/M]

    lehet nagyon triviális dolgokat kérdezek, de tényleg elég kezdő vagyok ezen a vonalon :)

Új hozzászólás Aktív témák