# Error installing linux_base-f10



## DarkLord (Nov 17, 2013)

I was attempting to install the Linux libraries through the ports collection, so I used the instructions provided by the handbook:

```
# cd /usr/ports/emulators/linux_base-f10
# make install clean
```
After running these commands, I would get the following output:

```
===> Linux_base-f10-10_7 linuxulator is not (kld)loaded.
*** [install] Error code 1
```
I found out how to install it by following the advice given on this thread, but I'm just wondering - why does the handbook instruct you to run the make command first, and the kdload linux command 2nd second when it should be the opposite? Did I miss something?

Also, I am just curious, how is it that we are loading the linux module before having installed the Linux libraries?


----------



## Zare (Nov 17, 2013)

The Linuxulator kernel module provides an application binary interface for Linux ELF executables. If linux.ko is loaded into kernel, FreeBSD can execute Linux binaries.

However, apart from correct system call translations and proper signal handling, more complex Linux applications require a Linux user environment, and that's where linux_base ports come in, as they contain Linux userland programs. And these programs can't work if linux.ko is not loaded.


----------



## DarkLord (Nov 17, 2013)

So basically what you're saying is that the ability to translate the system calls is essentially built-in to FreeBSD (you just have to load linux.ko), and then installing the libraries just adds more functionality to the Linux compatibility?

So then is the handbook just missing the first step to installing these libraries, the first step being loading linux.ko, or is that step not always necessary?


----------



## scottro (Nov 17, 2013)

In my experience, before installing it, I've always had to run `kldload linux`.  After that, you should be able to install the port without difficulty. 

Whether the handbook is missing the necessary step or not, I don't know.  I just remember it happened once or twice, so now I always run the command before installing the port.


----------

