Я пытаюсь собрать драйвер bme680 для raspberry pi 3. В процессе компиляции все работает без ошибок. Но когда я insmod
драйвер, я получил ошибку:
insmod: ERROR: could not insert module bme680_i2c.ko: Unknown symbol in module
Проверка dmesg
журнала, я обнаружил ошибку:
[ 96.011927] bme680_i2c: Unknown symbol __devm_regmap_init_i2c (err -2)
grep -nrwI __devm_regmap_init_i2c
, я увидел это функция, объявленная в заголовочном файле include/linux/regmap.h
, но нигде в исходном коде нет определения для этой функции. Вдобавок я видел, что эта функция экспортируется с лицензией GPL:
Module.symvers:10646:0x8037c97f __devm_regmap_init_i2c drivers/base/regmap/regmap-i2c EXPORT_SYMBOL_GPL
И драйвер также имеет MODULE_LICENSE("GPL v2")
. Теперь я не знаю, откуда эта ошибка и как ее решить. Может ли кто-нибудь мне помочь? Спасибо !!!