Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2012-12-07 20:43:07

  Maliniak - Nowy użytkownik

Maliniak
Nowy użytkownik
Skąd: okolica ;-)
Zarejestrowany: 2012-12-07

Kroskompilacja Raspbian'a(ARM) na Ubuntu 64(PC) i Syntax error: ")"

Witam,

          Pozornie udało mi się cross-kompilować kernel Raspbian'a na komputerze PC. Niestety kompilację udało się zakończyć i zainstalować, ale z błędem. 

           Zacznę od początku, najpierw przygotowałem RPi do kroskompilacji:

Kod:

    cd /usr/src
    git clone --depth 1 git://github.com/raspberrypi/firmware.git
    cd firmware/boot
    cp fixup.dat bootcode.bin start.elf start_cd.elf fixup_cd.dat kernel_cutdown.img kernel_emergency.img /boot/
    zcat /proc/config.gz > $pendrive/.config
    apt-get install -y make gcc libncurses5-dev
    rm -r $pendrive/linux
    cd /usr/src
    git clone --depth 1 git://github.com/raspberrypi/tools.git
    cd tools/arm-bcm2708
    cp -r arm-bcm2708hardfp-linux-gnueabi /
    cd /
    mv arm-bcm2708hardfp-linux-gnueabi cross
    rm -r /usr/src/tools
    rm -r /usr/src/firmware

Następnie plik konfiguracyjny przeniosłem na komputer PC, który też przygotowałem:

Kod:

    apt-get -y install make gcc git libncurses5-dev
    cd /usr/src
    git clone --depth 1 git://github.com/raspberrypi/linux.git
    cp $pendrive/.config /usr/src/linux/
    cd /usr/src
    git clone --depth 1 git://github.com/raspberrypi/tools.git
    apt-get -y install gcc-arm-linux-gnueabihf
    apt-get -y install ia32-libs
    cd tools/arm-bcm2708
    cp -r arm-bcm2708hardfp-linux-gnueabi /
    cd /
    mv arm-bcm2708hardfp-linux-gnueabi raspbian
    cd /usr/src/linux
    make ARCH=arm CROSS_COMPILE=/raspbian/bin/arm-bcm2708hardfp-linux-gnueabi- menuconfig
    make -j"$cores" ARCH=arm CROSS_COMPILE=/raspbian/bin/arm-bcm2708hardfp-linux-gnueabi-
    make modules -j"$cores" ARCH=arm CROSS_COMPILE=/raspbian/bin/arm-bcm2708hardfp-linux-gnueabi-
    cd /usr/src/tools/mkimage
    ./imagetool-uncompressed.py /usr/src/linux/arch/arm/boot/zImage
    cp kernel.img $pendrive
    cd /usr/src
    tar czfv $pendrive/linux.tar.gz linux/
    rm -r /raspbian
    rm -r /usr/src/tools

Podczas kompilacji pojawił się błąd składni, ale udało się całość przekompilować, po czym przeniosłem wszystko z powrotem na RPi do instalacji:

Kod:

    cp $pendrive/kernel.img /boot/
    cp $pendrive/linux.tar.gz /usr/src/
    cd /usr/src
    tar -xzf linux.tar.gz
    rm linux.tar.gz
    cd /usr/src/linux
    make ARCH=arm CROSS_COMPILE=/cross/bin/arm-bcm2708hardfp-linux-gnueabi- modules_install INSTALL_MOD_PATH=/

Podczas instalacji znowu ten sam błąd, ale wszystko poszło do końca:

Kod:

    (...)
    root@raspberrypi:/usr/src/linux# ARCH=arm CROSS_COMPILE=/cross/bin/arm-bcm2708hardfp-linux-gnueabi- make modules_install INSTALL_MOD_PATH=/
    /cross/bin/arm-bcm2708hardfp-linux-gnueabi-gcc: 1: /cross/bin/arm-bcm2708hardfp-linux-gnueabi-gcc: Syntax error: word unexpected (expecting ")")
      INSTALL arch/arm/oprofile/oprofile.ko
      INSTALL crypto/aes_generic.ko
      INSTALL crypto/arc4.ko
      INSTALL crypto/async_tx/async_memcpy.ko
    (...)

Kernel i moduły zaktualizowane, ale jak tylko próbuję coś skompilować przez make, make install - np. sterownik:

Kod:

    root@raspberrypi:/usr/src/stk1160# make
    make -C /lib/modules/3.2.27+/build M=/usr/src/stk1160 modules
    make[1]: Wejście do katalogu `/usr/src/linux'
      Building modules, stage 2.
      MODPOST 1 modules
    scripts/mod/modpost: 1: scripts/mod/modpost: Syntax error: ")" unexpected
    make[2]: *** [__modpost] Błąd 2
    make[1]: *** [modules] Błąd 2
    make[1]: Opuszczenie katalogu `/usr/src/linux'
    make: *** [all] Błąd 2
    root@raspberrypi:/usr/src/stk1160# ls
    Makefile       stk1160-core.c  stk1160-i2c.c  stk1160-reg.h  stk1160-video.c
    modules.order  stk1160-core.o  stk1160-i2c.o  stk1160-v4l.c  stk1160-video.o
    README.md      stk1160.h       stk1160.o      stk1160-v4l.o
    root@raspberrypi:/usr/src/stk1160#

... to nadal mam ten sam błąd, ale kompilacja już dalej jest niemożliwa :!:

Tyle roboty i *.

Może to problem ze źle zrobioną konfiguracją w menuconfig ??

Co wpisać w pole w ogólnych ustawieniach: "() Cross-compiler tool prefix." ?? 

Co robię źle ??   Skąd ten błąd ??

Ostatnio edytowany przez Maliniak (2012-12-08 11:45:27)


Raspberry Pi, model B, rewizja 2.0, 256MB RAM; Raspbian(prawie debian).

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)

[ Generated in 0.010 seconds, 12 queries executed ]

Informacje debugowania

Time (s) Query
0.00009 SET CHARSET latin2
0.00007 SET NAMES latin2
0.00167 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.145.7.187' WHERE u.id=1
0.00087 UPDATE punbb_online SET logged=1732363987 WHERE ident='3.145.7.187'
0.00031 SELECT * FROM punbb_online WHERE logged<1732363687
0.00107 DELETE FROM punbb_online WHERE ident='185.191.171.8'
0.00070 SELECT topic_id FROM punbb_posts WHERE id=216666
0.00062 SELECT id FROM punbb_posts WHERE topic_id=22456 ORDER BY posted
0.00063 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=22456 AND t.moved_to IS NULL
0.00005 SELECT search_for, replace_with FROM punbb_censoring
0.00067 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=22456 ORDER BY p.id LIMIT 0,25
0.00094 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=22456
Total query time: 0.00769 s