{"title":"Fedora 8814au Kernel Module Compilation","url":"https://seanbehan.ca/posts/8814au","description":"Compiling the out-of-tree 8814au driver for an Alfa AC1900 on Fedora, kernel headers and all.","author":"Sean Behan","published":"2022-05-12T19:21:37.000Z","updated":null,"draft":false,"tags":["development","kernel","linux"],"readingMinutes":1,"image":null,"sections":[{"id":"prerequisites","text":"Prerequisites","level":2},{"id":"kernel-header-installation","text":"Kernel Header Installation","level":2},{"id":"building-and-loading-the-module","text":"Building and Loading the Module","level":2}],"content_format":"text/markdown","content_url":"https://seanbehan.ca/posts/8814au.md","content":"For my wireless card, the Alfa AC1900, I had to compile the module to get it to\n\nwork on Linux since it wasn't already part of the kernel.\n\n### Prerequisites\n\nTo do this you will need:\n\n1. `make` and `gcc` or `clang`\n1. `kernel-debug-devel` package\n1. sudo permission to `insmod` the compiled module\n\nThis[^1] is the only one I found that worked for me on the latest stable linux\n\nkernel, which as of today on Fedora is 5.17.6.\n\n### Kernel Header Installation\n\nFirst you need to install the kernel development header package.\n\n```\n# Fedora\nsudo dnf install kernel-debug-devel\n\n# Ubuntu\nsudo apt install linux-headers-$(uname -r)\n```\n\n[^2]\n\n### Building and Loading the Module\n\nNext you need to make the module.\n\n```\ngit clone https://github.com/morrownr/8814au.git\ncd 8814au\n```\n\nNow simply `make` the module using the `make` command and use `insmod` to load\n\nit.\n\n```\nmake -j16\nsudo sh -c \"modprobe cfg80211; insmod /home/codebam/8814au/8814au.ko\"\n```\n\nIf everything worked successfully, you should now have a loaded 8814au module\n\nthat you can use along with your wireless card to connect to WiFi.\n\n[^1]: https://github.com/morrownr/8814au\n\n[^2]: https://www.tecmint.com/install-kernel-headers-in-ubuntu-and-debian\n"}