Menu

#3 Make ERROR: implicit declaration of function

open
nobody
None
5
2014-08-23
2009-07-15
Hua
No

I tried to compile HECI-5.0.0.30 under linux kernel 2.6.27.9 but got the following errors:

root@vheci-desktop:/home/vheci/HECI-5.0.0.30# make install
cd src && make install
make[1]: Entering directory `/home/vheci/HECI-5.0.0.30/src'
make -C /usr/src/linux-2.6.27.9 O=/lib/modules/2.6.27.9/build SUBDIRS=/home/vheci/HECI-5.0.0.30/src modules
make[2]: Entering directory `/usr/src/linux-2.6.27.9'
CC [M] /home/vheci/HECI-5.0.0.30/src/heci_main.o
/home/vheci/HECI-5.0.0.30/src/heci_main.c: In function ‘heci_sysfs_device_create’:
/home/vheci/HECI-5.0.0.30/src/heci_main.c:279: error: implicit declaration of function ‘class_device_create’
/home/vheci/HECI-5.0.0.30/src/heci_main.c:282: warning: assignment makes pointer from integer without a cast
/home/vheci/HECI-5.0.0.30/src/heci_main.c: In function ‘heci_sysfs_device_remove’:
/home/vheci/HECI-5.0.0.30/src/heci_main.c:296: error: implicit declaration of function ‘class_device_unregister’
make[4]: *** [/home/vheci/HECI-5.0.0.30/src/heci_main.o] Error 1
make[3]: *** [_module_/home/vheci/HECI-5.0.0.30/src] Error 2
make[2]: *** [sub-make] Error 2
make[2]: Leaving directory `/usr/src/linux-2.6.27.9'
make[1]: *** [default] Error 2
make[1]: Leaving directory `/home/vheci/HECI-5.0.0.30/src'
make: *** [install] Error 2

If I replace 'class_device_create' and 'class_device_unregister' with 'device_create' and 'device_unregister', it works. What's the right way to handle it?

Discussion


Log in to post a comment.