Criando o primeiro modulo no kernel
Já vou começar dizendo que essa foi de longe a parte mais demorada e não é porque o tutorial não estava preparado para possiveis erros de principiantes.
Antes de eu falar dos erros que aconteceu, gostaria de começar pelas dúvidas que não consegui resposta de primeira e que não apresentava no tutorial
- O comando
kw build
possui cache? - Quando que eu vou precisar fazer o
clean
? Seria como uma imagem do docker e a partir disso vc precisar rebuild tudo
Agora bora para as partes que realmente me travaram:
No momento de instalar os novos modulos na imagem foi copiado os comandos de se executar sem o kw, entretanto não foi avisado que era preciso, estar com a vm desligada e o que seria $VM_MOUNT_POINT
.
mkdir "${VM_DIR}/arm64_rootfs"
### ADAPT THE COMMAND BELOW ###
sudo guestmount --rw --add "${VM_DIR}/arm64_img.qcow2" --mount /dev/<rootfs> "${VM_DIR}/arm64_rootfs" # mount the VM `rootfs` to the given mount point in read and write mode (this could take a while)
sudo --preserve-env make -C "${IIO_TREE}" INSTALL_MOD_PATH="${VM_DIR}/arm64_rootfs" modules_install # install modules to inside the VM
sudo guestunmount "$VM_MOUNT_POINT" # unmount the VM `rootfs`
O segundo erro foi resolvido rapidamente, eu adicionei no activate o VM_MOUNT_POINT
como ${VM_DIR}/arm64_rootfs
e assim ele apontava para a pasta certinho, mas depois de rodar esses comandos minha vm não executava de jeito nenhum. Tive que pedir ajuda para o David, mas eu já estava no meio de refazer a vm toda dnv, então ele me ajudou mais a me mostrar uns comandos do vim que não conhecia
Depois que montei a vm dnv deu tudo certo 😄 . Finalizei o tutorial e a parte de criar o modulo finalmente deu certo e foi bem tranquila.