Parece que este é o principal kernel upstream, então por favor dê uma olhada em MainlineBuilds , você provavelmente encontrará o kernel adequando suas necessidades aqui.
No Ubuntu 16.04, o kernel padrão (4.4) é muito antigo para compilar este driver. Mas você pode instalar um kernel mais recente HWE usando este comando: sudo apt-get install --install-recommends linux-generic-hwe-16.04
.
Compilação manual, testada em 16.04 com o kernel 4.10.0-35-generic
mkdir opt3001 && cd opt3001
wget https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/plain/drivers/iio/light/opt3001.c
echo 'obj-$(CONFIG_OPT3001) += opt3001.o' > Makefile
make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
Alguns pacotes podem ser necessários ( build-essential
, linux-headers-$(uname -r)
, ...).
E você pode dar uma olhada em esta resposta se tiver problemas com a inicialização segura ( insmod: ERROR: could not insert module opt3001.ko: Required key not available
).