Rebuilding Kernels for X

README for XFree86 on FreeBSD : Rebuilding Kernels for X
Previous: Running X
Next: Building X Clients

## 6. Rebuilding Kernels for X

The GENERIC FreeBSD kernels support XFree86 without any modifications required. You do not need to make any changes to the GENERIC kernel or any kernel configuration which is a superset.

For a general description of BSD kernel configuration get smm.02.config.ps.Z. It is a ready-to-print postscript copy of the kernel configuration chapter from the system maintainers manual.

If you do decide to reduce your kernel configuration file, do not remove the two lines below (in `/sys/arch/i386/conf`). They are both required for X support:

> `

>      options		XSERVER			#Xserver
>      options		UCONSOLE		#X Console support

> `

The generic FreeBSD kernels are configured by default with the syscons driver. To configure your kernel similarly it should have a line like this in `/usr/src/sys/i386/conf/GENERIC`:

> `

>      device		sc0	at isa? port "IO_KBD" tty irq 1 vector scintr

> `

The number of virtual consoles can be set using the NCONS option:

> `

>      options		"NCONS=4"		#4 virtual consoles

> `

Otherwise, the default without a line like this is 12. You must have more VTs than gettys as described in the end of section 3, and 4 is a reasonable minimum.

The server supports several console drivers: pccons, syscons and pcvt. The syscons driver is the default in FreeBSD 1.1.5 and higher. They are detected at runtime and no configuration of the server itself is required.

The XFree86 servers include support for the MIT-SHM extension. The GENERIC kernel does not support this, so if you want to make use of this, you will need a kernel configured with SYSV shared memory support. To do this, add the following line to your kernel config file:

> `

>      options		SYSVSHM			# System V shared memory
>      options		SYSVSEM			# System V semaphores
>      options		SYSVMSG			# System V message queues

> `

If you are using a SoundBlaster 16 on IRQ 2 (9), then you need a patch for sb16_dsp.c. Otherwise a kernel configured with the SoundBlaster driver will claim interrupt 9 doesn't exist and X server will lock up.

S3 cards and serial port COM 4 cannot be installed together on a system because the I/O port addresses overlap.

README for XFree86 on FreeBSD : Rebuilding Kernels for X
Previous: Running X
Next: Building X Clients