# Cannot get ndisgen to make driver for RTL8821AE



## 007schrayer (Jul 27, 2019)

I have a lenovo all in one pc that has the Real Tek 8821AE wireless card. I have gone on the manufacturers website and downloaded the .sys and .inf files for ndisgen, and when I run the program to create the module i get all the way to the point where it says:

```
Generating Makefile... done.
Building kernel module... ln: machine: Operation not supported
build failed. Exiting
```
I am not sure where to go from here. I have been tring to connect my freebsd system to the internet through a wireless connection and this is a roadblock.


----------



## tingo (Jul 28, 2019)

Your best best is getting a network card (usb connected or otherwise) that is supported in FreeBSD.
Messing around with ndisgen is just adding frustrations.
Just my 0.2 eurocents.


----------



## SirDice (Jul 30, 2019)

tingo said:


> Messing around with ndisgen is just adding frustrations.


I think the last time I have seen ndisgen(8) work, Windows 95 was still a thing. And even then it was a hit or miss if it worked or not. Don't bother with it. 

I'd try rtwn(4) for a RTL8821 type card.


----------



## Koen Smeets (Nov 14, 2019)

SirDice said:


> I think the last time I have seen ndisgen(8) work, Windows 95 was still a thing. And even then it was a hit or miss if it worked or not. Don't bother with it.
> 
> I'd try rtwn(4) for a RTL8821 type card.



Sorry to say, but this is a bit of a sobering post seeing it coming from a board admin.

I had the same issue and it is working now:
carefully inspecting the error message one will see the error is from the 'ln' command, which is used to link files.
I was running ndisgen while the input files where on a USB pen drive, and also the current working directory was there.

Moving the files to SSD solved it; now running 11.2 with relatively old wifi card (Broadcom), but will suit my needs.

Hope this is still relevant to OP (and maybe even any other person hitting same error).

Koen


----------



## SirDice (Nov 14, 2019)

Koen Smeets said:


> Sorry to say, but this is a bit of a sobering post seeing it coming from a board admin.


Don't read too much into that Admin flag, I'm just a user like most of us here. I do have lots of experience, I've been a daily user of FreeBSD since 3.0. 

I never had a "good" experience with ndisgen(8). It's typically easier and quicker to simply buy another card, one that's known to work with the native drivers.


----------



## Phishfry (Nov 15, 2019)

SirDice said:


> I'm just a user like most of us here.


I would have to call you a super-user. You really help anybody regardless of their snide remarks.
That must be tough to do. Setting your feelings aside for the free technical support role.
You are a true professional and one the forums best assets.


----------



## wb7odyfred (Oct 18, 2021)

SirDice, Phishfry, Grahamperrin Thank you for your support to other FreeBSD users. I am working to follow in your foot steps to also help others with their wireless questions.

Howto setup RTWN driver  for RTL8821cu card,from a future Post :>)

As a new user myself a few years back using GhostBSD working to get wifi operational,  I read lots of web posts, gleaning bits and pieces of information from them and from reading the FreeBSD handbook, yet I found nothing to show a new user to FreeBSD (or GhostBSD) how to start from NO KNOWLEDGE, what commands to begin with to know what wifi device was hidden inside that Dell Laptop.   I distilled them to a set of howto commands useful for a USB device RTL8192cu Edimax EW7811un 150 mbits wifi usb nano dongle working and a second post for PCI device RTL8188CE internal to a Dell Inspiron Laptop.

Hope this collected information helps you out today, whichever year it is in the future.  Please have a read and see if you can follow it down the happy trail to a working Wifi connection to your favorite access point.   It is really hard being a newbie to an operating system, and not knowing what command to type at a command line,  what command comes first and what sequence of commands follow to give you the information for the next input question asked.  Finally what files do you have to edit and what information do you need to place in those files?

3 Files to add configuration lines into /boot/loader.conf /etc/rc.conf /etc/wpa_supplicant.conf
You will need to install 2 or 3 wifi driver kernel modules with kldload command.  Start with 2 comands, 

```
uname -a
kldstat
```
Know what version of FreeBSD you are running with "uname -a" command.  Then "kldstat" command to see what kernel modules  .ko file have already been loaded from this directory /boot/kernel.

See what pci and usb devices are attached to your computer.  Look for the wireless wifi device name.

```
pciconf -lv
usbconfig list
usbconfig dump_device_desc
```

Load these 3 kernel modules, as an example for a Realtek wifi driver, either USB or PCI

```
kldload rtwn if_rtwn_usb if_rtwn_pci     
kldstat
```


create rtwn0 device

```
ifconfig wlan0 create wlandev rtwn0
```

Bringing up the Wi-Fi device, will load the device firmware automatically. Then will scan for local WiFi access points that you could connect to.
i
	
	



```
ifconfig wlan0 up scan
```

See the 2 url links at the start of this post to get more details for connecting to a Wifi Access Point.

Github MorrownR RTL8821cu Linux Device Driver source code. He adds a lot of good sound information that may be useful to read about that is the same suggestions for a FreeBSD wifi checklist.


----------

