W-Lan Treiber RTL8812AU Installation

  • Servus zusammen!
    Hatte mir letztens, zwecks umstellung des W-Lan Netzwerkes einen neuen W-Lan Stick besorgt.
    Der hier ist es geworden: Edimax AC600 (Affiliate-Link)


    Ich benutze den PI 2 mit Raspbian.
    Der Stick wird schon mal erkannt.

    Code
    Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
    Bus 001 Device 005: ID 7392:a812 Edimax Technology Co., Ltd



    Der Download des angegebenen Treibers klappt auch noch, nur bei der Installation hapert es...
    Sobald ich den Treiber erstellen will per sudo make kommt folgende Fehlermeldung:

    Code
    make ARCH=armv7l CROSS_COMPILE= -C /lib/modules/4.1.6-v7+/build M=/home/pi/rtl8812AU_8821AU_linux/rtl8812AU_8821AU_linux  modules
    make[1]: *** /lib/modules/4.1.6-v7+/build: Datei oder Verzeichnis nicht gefunden.  Schluss.
    Makefile:1040: recipe for target 'modules' failed
    make: *** [modules] Error 2


    Verschiedene sachen die durch Googlen zu finden sind hab ich schon versucht aber bis jetzt hat noch nichts geklappt.


    Für Hilfe wäre ich sehr dankbar!
    MfG

  • Code
    make ARCH=armv7l CROSS_COMPILE= -C /lib/modules/4.1.6-v7+/build M=/home/pi/rtl8812AU_8821AU_linux/rtl8812AU_8821AU_linux  modules
    make[1]: *** /lib/modules/4.1.6-v7+/build: Datei oder Verzeichnis nicht gefunden.  Schluss.


    Wie ist auf deinem PI, die Ausgabe von:

    Code
    ls -la /lib/modules


    ?

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

  • Code
    drwxr-xr-x  7 root root 4096 Jul  2 05:41 .
    drwxr-xr-x 14 root root 4096 Mai  7 01:15 ..
    drwxr-xr-x  2 root root 4096 Jul  2 04:19 3.10-3-rpi
    drwxr-xr-x  3 root root 4096 Jul  2 05:43 3.18.0-trunk-rpi
    drwxr-xr-x  2 root root 4096 Jul  2 05:31 3.2.0-4-rpi
    drwxr-xr-x  3 root root 4096 Jul  2 03:50 4.1.6+
    drwxr-xr-x  3 root root 4096 Jul  2 06:21 4.1.6-v7+


    Das wäre die Ausgabe.
    Ich denke das die Ausgabe bei ls -la /lib/modules/4.1.6-v7+/ auch Interessant ist deswegen:

  • Habt ihr den Source-Code für die Hardware?
    Dann könnte ihr auf dem PI, besonders wenn es ein 2er ist, das laufen lassen und braucht keine Cross-Compile Umgebung.


    Den PI auf den aktuellsten Stand updaten. (auch per rpi-update)
    Das Paket "apt-get install bc" installieren (wird beim Bauen des Kernels gebraucht.)


    Dann das Paket 'rpi-source' vom aktuellen PI besorgen

    Code
    wget https://raw.githubusercontent.com/notro/rpi-source/master/rpi-source -O /usr/bin/rpi-source && sudo chmod +x /usr/bin/rpi-source && /usr/bin/rpi-source -q --tag-update


    Da "rpi-source" sicher einen Fehler meldet, da der Kernel mit einer anderen gcc-Version gebaut wurde als die, die auf dem PI drauf ist, den passenden gcc und g++ holen. z.B.

    Code
    apt-get install gcc-4.8 g++-4.8


    diesen gcc und g++ als default einstellen

    Code
    update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 20
    update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
    update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 20
    update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50


    Die Kernel-Sourcen holen

    Code
    rpi-source


    Code
    apt-get install libncurses5-dev


    wenn es fehlt ;)


    Die passenden Sourcen für das gewünschte Modul in die Sourcen einbauen (sollte dort stehen wie
    Hier mal ein Beispiel, wie man den Framebuffer-Treiber für den C-Berry dort einbau


    )
    In das Verzeichnis, in dem der Source-Tree liegt, gehen (..../linux), das ist nochmaler ein Link in dem Verzeichnis, in dem man angefangen hat, den Sourcecode zu holen.


    Neuen Treiber via 'make menuconfig' als Modul hinzufügen
    (wiederum am CBerry-Treiber

    Code
    make menuconfig
    → Device Drivers → Graphics support
    <M> C-Berry LCD frame buffer support
    Exit und save


    )


    (Kernel compilieren

    Code
    make
    oder
    make -j 5 (auf einem vierkerner PI)


    )


    Module bauen und installieren

    Code
    make modules
    make modules_install


    (neuen Kernel kopiern

    Code
    cp .../arch/arm/boot/zImage /boot/kernel.img


    neustart
    )


    Module hinzufügen

    Code
    modprobe ${modulname}
    dmesg


    Wenn das ganze nicht als Modul gebaut werden sollte, konfiguriert man das ganze nicht als Modul im 'make menuconfig' sondern fest in den Kernel.


    (Ich mach das immer als root, andere als normaler Benutzer, daher fehlen bei mir die 'sudo's)


    Dauer auf einem PI B2 mit dem Parameter -j 5 ca zwei Stunden für den Kernel.
    Die Module gehen schnell.


    Nachdem man dann den selbst gebauten Kernel kopiert hat, kann man das neue Modul auch laden.
    Es gibt dann das Device /dev/fb1

    Selber denken,
    wie kann man nur?

    Edited once, last by Rasp-Berlin ().

  • Könnte mir bitte jemand diesen Schritt genauer erläutern? Verstehe nicht genau wie ich die Befehle der # durchführen muss/soll


    [/font]

    Edited once, last by sh4dow ().