Kernel Header beziehen? (/lib/modules/4.19.69-v7+/build: No such file or directory)

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • kerrick
    Smart Home'r
    • 03.09.2015
    • 91

    Kernel Header beziehen? (/lib/modules/4.19.69-v7+/build: No such file or directory)

    Hallöchen,

    ich hatte auf meinem Loxberry mal wireguard zu laufen und kürzlich bemerkt, dass es nicht mehr funktioniert.
    Meine Vermutung ist, dass es beim Upgrade von Loxberry 1 auf 2 kaputt ging.
    Nich weiter tragisch, kann man ja neu bauen, dachte ich mir. Doch das schlägt ziemlich schnell fehl:

    Code:
    $ make -C wireguard-linux-compat/src/
    make: Entering directory '/home/xx/wireguard/wireguard-linux-compat/src'
    make[1]: Entering directory '/home/xx/wireguard/wireguard-linux-compat/src'
    make[1]: *** /lib/modules/4.19.69-v7+/build: No such file or directory. Stop.
    ...
    Normalerweise würde ich ein Paket namens `linux-headers`, `raspberrypi-kernel-headers` oder ähnliches installieren aber für den LoxBerry Kernel gibt's das nicht, soweit ich es sehe.

    Für eine ältere Kernelversion existieren anscheinend Header:
    Code:
    /usr/src $ ll
    total 12
    drwxr-xr-x 24 root root 4096 Oct 20 2019 linux-headers-4.19.66+
    drwxr-xr-x 24 root root 4096 Oct 20 2019 linux-headers-4.19.66-v7+
    Kann ich die zum Kernel passenden Header irgendwo runterladen?
  • svethi
    Lebende Foren Legende
    • 25.08.2015
    • 6301

    #2
    Da das, wie schon etliche Male geschrieben, ein normales Raspbian mit den normalen Repos ist, kannst Du die auch ganz normal installieren. Die Frage ist natürlich, welcher Kernel ist installiert?! Du kannst keine header für einen Kernel installieren, der nicht drauf ist. Zumindest nicht so einfach. Macht ja auch keinen Sinn.
    Miniserver; KNX; Vitogate; EnOcean (EnOceanPi); Loxone Air; Caldav-Kalenderanbindung; RaspberryPi und für keine Frickellösung zu schade :-)

    Kommentar


    • Prof.Mobilux
      Prof.Mobilux kommentierte
      Kommentar bearbeiten
      Nicht ganz: wir nutzen einen Kernel über Raspi-Update. Da passen die Header aus dem repo nicht.

    • svethi
      svethi kommentierte
      Kommentar bearbeiten
      Die kommen doch aber auch aus den offiziellen Kanälen. Die müssen doch dann auch die Header über die offiziellen Stellen verteilen.
  • Prof.Mobilux
    Supermoderator
    • 25.08.2015
    • 4682

    #3
    Du kannst die Kernel Header mit Raspi-Source nachinstallieren: https://github.com/notro/rpi-source/wiki
    🇺🇦 Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine


    LoxBerry - Beyond the Limits

    Kommentar

    • kerrick
      Smart Home'r
      • 03.09.2015
      • 91

      #4
      Vielen Dank, mit rpi-source bin ich weiter gekommen!

      Falls jemand ähnliches vor hat hier noch ein paar Tipps:
      Wenn man den Kernel aus Platzgründen auf einem externen Datenträger entpackt,dann muss man darauf achten, mit welchen Optionen er gemountet ist, weil in dem Verzeichnis auch noch gebaut und ausgeführt werden muss. Das äußert sich dann in einem "permission denied" Fehler. Also muss man ggf. die `noexec` Option abschalten:
      Code:
      mount -o remount,exec <mount-punkt>
      Ich weiß nicht, ob ich `rpi-source` mit meinem anfänglichen `noexec` einfach nur dazwischengefunkt hatte und es die Konfiguration deswegen nicht gebaut hat. Daher war bei mir noch das Bauen der Konfiguration erforderlich. `make oldconfig` wurde vom wireguard build-script vorgeschlagen. Ich glaube `rpi-source` würde normalerweise etwas anderes tun aber das hier hat's jedenfalls für mich getan (vom Kernel-Header-Verzeichnis aus):
      Code:
      cd /lib/modules/4.19.69-v7+/build
      make oldconfig
      Danach konnte wireguard `scripts/recordmcount` nicht finden, wogegen das Bauen der Kernel Scripts geholfen hat:
      Code:
      cd /lib/modules/4.19.69-v7+/build
      make scripts
      Ab da konnte ich Wireguard nach Anleitung bauen.

      Kommentar

      Lädt...