[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Problems building VMWare modules for debian 2.6.3 kernel



>>>>> Steinar Bang <sb@dod.no>:

> Platform: Intel Pentium M (Dell Latitude D600),
> 	  debian sarge (testing/unstable),
> 	  VMware-workstation-4.5.1-7568,
> 	  kernel-image-2.6.3-1-686 2.6.3-2
> 	  kernel-headers-2.6.3-1 2.6.3-2
> 	  kernel-headers-2.6.3-1-686 2.6.3-2
> 	  libc6 2.3.2.ds1-11
> 	  libc6-dev 2.3.2.ds1-11
> 	  gcc 3.3.3-2

> Hi!

> I tried installing VMware 4.5.1 on my debian sarge (testing/unstable)
> system.  The system is a laptop with a 2.6.3 kernel installed from a
> debian package.

> The installation failed with trying to compile the modules. [snip!]

Some more debugging of the module build process.  The VMWare
installation script creates the directory
/tmp/vmware-config0/vmmon-only/.  And it's from this directory that
the kernel modules are attempted built.  This directory contains a
Makefile, and it's this makefile that attempts to run the
kernel-headers' Makefile as a recursive make process-

The error message I get, is:

scripts/file2alias.c:30:46: ../include/linux/mod_devicetable.h: No such file or directory

The file that reports this error message is
	/usr/src/kernel-headers-2.6.3-1-686/scripts/file2alias.c

The line that causes the error message, is:

#include "../include/linux/mod_devicetable.h"


If I'm visiting the file2alias.c file in emacs, and type
	C-x C-f ../include/linux/mod_devicetable.h RET
the header file opens nicely in emacs.

../include/ as seen from file2alias.c is a regular directory.
../include/linux/ is a regular directory as well.
../include/linux/mod_devicetable.h is a symlink:
  lrwxrwxrwx    1 root     root           63 Mar 31 21:34 mod_devicetable.h -> ../../../kernel-headers-2.6.3-1/include/linux/mod_devicetable.h

If the header file can be visited with emacs, it should be possible
for gcc to find it as well.  One problem could be that the directory
offset is wrong.  

I've tried added to the include path, by adding -Iscripts, and
-I./scripts to the CPPFLAGS variable of
	/usr/src/kernel-headers-2.6.3-1/Makefile

But it didn't make any difference.  The complete output of the make,
is:

cd /tmp/vmware-config0/vmmon-only/
make 
Using 2.6.x kernel build system.
make -C /lib/modules/2.6.3-1-686/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/kernel-headers-2.6.3-1-686'
  CHK     include/linux/version.h
  CC      scripts/empty.o
  MKELF   scripts/elfconfig.h
  HOSTCC  scripts/file2alias.o
scripts/file2alias.c:30:46: ../include/linux/mod_devicetable.h: No such file or directory
scripts/file2alias.c:47: warning: `struct usb_device_id' declared inside parameter list
scripts/file2alias.c:47: warning: its scope is only this definition or declaration, which is probably not what you want
scripts/file2alias.c: In function `do_usb_entry':
scripts/file2alias.c:49: error: dereferencing pointer to incomplete type
scripts/file2alias.c:49: error: dereferencing pointer to incomplete type
scripts/file2alias.c:50: error: dereferencing pointer to incomplete type
scripts/file2alias.c:50: error: dereferencing pointer to incomplete type
scripts/file2alias.c:51: error: dereferencing pointer to incomplete type
scripts/file2alias.c:51: error: dereferencing pointer to incomplete type
scripts/file2alias.c:52: error: dereferencing pointer to incomplete type
scripts/file2alias.c:52: error: dereferencing pointer to incomplete type
scripts/file2alias.c:53: error: dereferencing pointer to incomplete type
scripts/file2alias.c:53: error: dereferencing pointer to incomplete type
scripts/file2alias.c:56: error: dereferencing pointer to incomplete type
scripts/file2alias.c:56: error: `USB_DEVICE_ID_MATCH_VENDOR' undeclared (first use in this function)
scripts/file2alias.c:56: error: (Each undeclared identifier is reported only once
scripts/file2alias.c:56: error: for each function it appears in.)
scripts/file2alias.c:56: error: dereferencing pointer to incomplete type
scripts/file2alias.c:56: error: dereferencing pointer to incomplete type
scripts/file2alias.c:56: error: dereferencing pointer to incomplete type
scripts/file2alias.c:56: error: dereferencing pointer to incomplete type
scripts/file2alias.c:58: error: dereferencing pointer to incomplete type
scripts/file2alias.c:58: error: `USB_DEVICE_ID_MATCH_PRODUCT' undeclared (first use in this function)
scripts/file2alias.c:58: error: dereferencing pointer to incomplete type
scripts/file2alias.c:58: error: dereferencing pointer to incomplete type
scripts/file2alias.c:58: error: dereferencing pointer to incomplete type
scripts/file2alias.c:58: error: dereferencing pointer to incomplete type
scripts/file2alias.c:60: error: dereferencing pointer to incomplete type
scripts/file2alias.c:60: error: `USB_DEVICE_ID_MATCH_DEV_LO' undeclared (first use in this function)
scripts/file2alias.c:60: error: dereferencing pointer to incomplete type
scripts/file2alias.c:60: error: dereferencing pointer to incomplete type
scripts/file2alias.c:60: error: dereferencing pointer to incomplete type
scripts/file2alias.c:60: error: dereferencing pointer to incomplete type
scripts/file2alias.c:62: error: dereferencing pointer to incomplete type
scripts/file2alias.c:62: error: `USB_DEVICE_ID_MATCH_DEV_HI' undeclared (first use in this function)
scripts/file2alias.c:62: error: dereferencing pointer to incomplete type
scripts/file2alias.c:62: error: dereferencing pointer to incomplete type
scripts/file2alias.c:62: error: dereferencing pointer to incomplete type
scripts/file2alias.c:62: error: dereferencing pointer to incomplete type
scripts/file2alias.c:64: error: dereferencing pointer to incomplete type
scripts/file2alias.c:64: error: `USB_DEVICE_ID_MATCH_DEV_CLASS' undeclared (first use in this function)
scripts/file2alias.c:64: error: dereferencing pointer to incomplete type
scripts/file2alias.c:64: error: dereferencing pointer to incomplete type
scripts/file2alias.c:64: error: dereferencing pointer to incomplete type
scripts/file2alias.c:64: error: dereferencing pointer to incomplete type
scripts/file2alias.c:66: error: dereferencing pointer to incomplete type
scripts/file2alias.c:66: error: `USB_DEVICE_ID_MATCH_DEV_SUBCLASS' undeclared (first use in this function)
scripts/file2alias.c:66: error: dereferencing pointer to incomplete type
scripts/file2alias.c:66: error: dereferencing pointer to incomplete type
scripts/file2alias.c:66: error: dereferencing pointer to incomplete type
scripts/file2alias.c:66: error: dereferencing pointer to incomplete type
scripts/file2alias.c:69: error: dereferencing pointer to incomplete type
scripts/file2alias.c:69: error: `USB_DEVICE_ID_MATCH_DEV_PROTOCOL' undeclared (first use in this function)
scripts/file2alias.c:69: error: dereferencing pointer to incomplete type
scripts/file2alias.c:69: error: dereferencing pointer to incomplete type
scripts/file2alias.c:69: error: dereferencing pointer to incomplete type
scripts/file2alias.c:69: error: dereferencing pointer to incomplete type
scripts/file2alias.c:72: error: dereferencing pointer to incomplete type
scripts/file2alias.c:72: error: `USB_DEVICE_ID_MATCH_INT_CLASS' undeclared (first use in this function)
scripts/file2alias.c:72: error: dereferencing pointer to incomplete type
scripts/file2alias.c:72: error: dereferencing pointer to incomplete type
scripts/file2alias.c:72: error: dereferencing pointer to incomplete type
scripts/file2alias.c:72: error: dereferencing pointer to incomplete type
scripts/file2alias.c:75: error: dereferencing pointer to incomplete type
scripts/file2alias.c:75: error: `USB_DEVICE_ID_MATCH_INT_SUBCLASS' undeclared (first use in this function)
scripts/file2alias.c:75: error: dereferencing pointer to incomplete type
scripts/file2alias.c:75: error: dereferencing pointer to incomplete type
scripts/file2alias.c:75: error: dereferencing pointer to incomplete type
scripts/file2alias.c:75: error: dereferencing pointer to incomplete type
scripts/file2alias.c:78: error: dereferencing pointer to incomplete type
scripts/file2alias.c:78: error: `USB_DEVICE_ID_MATCH_INT_PROTOCOL' undeclared (first use in this function)
scripts/file2alias.c:78: error: dereferencing pointer to incomplete type
scripts/file2alias.c:78: error: dereferencing pointer to incomplete type
scripts/file2alias.c:78: error: dereferencing pointer to incomplete type
scripts/file2alias.c:78: error: dereferencing pointer to incomplete type
scripts/file2alias.c: At top level:
scripts/file2alias.c:86: warning: `struct ieee1394_device_id' declared inside parameter list
scripts/file2alias.c: In function `do_ieee1394_entry':
scripts/file2alias.c:88: error: dereferencing pointer to incomplete type
scripts/file2alias.c:88: error: dereferencing pointer to incomplete type
scripts/file2alias.c:89: error: dereferencing pointer to incomplete type
scripts/file2alias.c:89: error: dereferencing pointer to incomplete type
scripts/file2alias.c:90: error: dereferencing pointer to incomplete type
scripts/file2alias.c:90: error: dereferencing pointer to incomplete type
scripts/file2alias.c:91: error: dereferencing pointer to incomplete type
scripts/file2alias.c:91: error: dereferencing pointer to incomplete type
scripts/file2alias.c:92: error: dereferencing pointer to incomplete type
scripts/file2alias.c:92: error: dereferencing pointer to incomplete type
scripts/file2alias.c:95: error: dereferencing pointer to incomplete type
scripts/file2alias.c:95: error: `IEEE1394_MATCH_VENDOR_ID' undeclared (first use in this function)
scripts/file2alias.c:95: error: dereferencing pointer to incomplete type
scripts/file2alias.c:95: error: dereferencing pointer to incomplete type
scripts/file2alias.c:95: error: dereferencing pointer to incomplete type
scripts/file2alias.c:95: error: dereferencing pointer to incomplete type
scripts/file2alias.c:97: error: dereferencing pointer to incomplete type
scripts/file2alias.c:97: error: `IEEE1394_MATCH_MODEL_ID' undeclared (first use in this function)
scripts/file2alias.c:97: error: dereferencing pointer to incomplete type
scripts/file2alias.c:97: error: dereferencing pointer to incomplete type
scripts/file2alias.c:97: error: dereferencing pointer to incomplete type
scripts/file2alias.c:97: error: dereferencing pointer to incomplete type
scripts/file2alias.c:99: error: dereferencing pointer to incomplete type
scripts/file2alias.c:99: error: `IEEE1394_MATCH_SPECIFIER_ID' undeclared (first use in this function)
scripts/file2alias.c:99: error: dereferencing pointer to incomplete type
scripts/file2alias.c:99: error: dereferencing pointer to incomplete type
scripts/file2alias.c:99: error: dereferencing pointer to incomplete type
scripts/file2alias.c:99: error: dereferencing pointer to incomplete type
scripts/file2alias.c:101: error: dereferencing pointer to incomplete type
scripts/file2alias.c:101: error: `IEEE1394_MATCH_VERSION' undeclared (first use in this function)
scripts/file2alias.c:101: error: dereferencing pointer to incomplete type
scripts/file2alias.c:101: error: dereferencing pointer to incomplete type
scripts/file2alias.c:101: error: dereferencing pointer to incomplete type
scripts/file2alias.c:101: error: dereferencing pointer to incomplete type
scripts/file2alias.c: At top level:
scripts/file2alias.c:109: warning: `struct pci_device_id' declared inside parameter list
scripts/file2alias.c: In function `do_pci_entry':
scripts/file2alias.c:115: error: dereferencing pointer to incomplete type
scripts/file2alias.c:115: error: dereferencing pointer to incomplete type
scripts/file2alias.c:116: error: dereferencing pointer to incomplete type
scripts/file2alias.c:116: error: dereferencing pointer to incomplete type
scripts/file2alias.c:117: error: dereferencing pointer to incomplete type
scripts/file2alias.c:117: error: dereferencing pointer to incomplete type
scripts/file2alias.c:118: error: dereferencing pointer to incomplete type
scripts/file2alias.c:118: error: dereferencing pointer to incomplete type
scripts/file2alias.c:119: error: dereferencing pointer to incomplete type
scripts/file2alias.c:119: error: dereferencing pointer to incomplete type
scripts/file2alias.c:120: error: dereferencing pointer to incomplete type
scripts/file2alias.c:120: error: dereferencing pointer to incomplete type
scripts/file2alias.c:123: error: dereferencing pointer to incomplete type
scripts/file2alias.c:123: error: `PCI_ANY_ID' undeclared (first use in this function)
scripts/file2alias.c:123: error: dereferencing pointer to incomplete type
scripts/file2alias.c:123: error: dereferencing pointer to incomplete type
scripts/file2alias.c:123: error: dereferencing pointer to incomplete type
scripts/file2alias.c:123: error: dereferencing pointer to incomplete type
scripts/file2alias.c:124: error: dereferencing pointer to incomplete type
scripts/file2alias.c:124: error: dereferencing pointer to incomplete type
scripts/file2alias.c:124: error: dereferencing pointer to incomplete type
scripts/file2alias.c:124: error: dereferencing pointer to incomplete type
scripts/file2alias.c:124: error: dereferencing pointer to incomplete type
scripts/file2alias.c:125: error: dereferencing pointer to incomplete type
scripts/file2alias.c:125: error: dereferencing pointer to incomplete type
scripts/file2alias.c:125: error: dereferencing pointer to incomplete type
scripts/file2alias.c:125: error: dereferencing pointer to incomplete type
scripts/file2alias.c:125: error: dereferencing pointer to incomplete type
scripts/file2alias.c:126: error: dereferencing pointer to incomplete type
scripts/file2alias.c:126: error: dereferencing pointer to incomplete type
scripts/file2alias.c:126: error: dereferencing pointer to incomplete type
scripts/file2alias.c:126: error: dereferencing pointer to incomplete type
scripts/file2alias.c:126: error: dereferencing pointer to incomplete type
scripts/file2alias.c:128: error: dereferencing pointer to incomplete type
scripts/file2alias.c:129: error: dereferencing pointer to incomplete type
scripts/file2alias.c:130: error: dereferencing pointer to incomplete type
scripts/file2alias.c:131: error: dereferencing pointer to incomplete type
scripts/file2alias.c:132: error: dereferencing pointer to incomplete type
scripts/file2alias.c:133: error: dereferencing pointer to incomplete type
scripts/file2alias.c:140: error: dereferencing pointer to incomplete type
scripts/file2alias.c: At top level:
scripts/file2alias.c:152: warning: `struct ccw_device_id' declared inside parameter list
scripts/file2alias.c: In function `do_ccw_entry':
scripts/file2alias.c:154: error: dereferencing pointer to incomplete type
scripts/file2alias.c:154: error: dereferencing pointer to incomplete type
scripts/file2alias.c:155: error: dereferencing pointer to incomplete type
scripts/file2alias.c:155: error: dereferencing pointer to incomplete type
scripts/file2alias.c:156: error: dereferencing pointer to incomplete type
scripts/file2alias.c:156: error: dereferencing pointer to incomplete type
scripts/file2alias.c:157: error: dereferencing pointer to incomplete type
scripts/file2alias.c:157: error: dereferencing pointer to incomplete type
scripts/file2alias.c:158: error: dereferencing pointer to incomplete type
scripts/file2alias.c:158: error: dereferencing pointer to incomplete type
scripts/file2alias.c:161: error: dereferencing pointer to incomplete type
scripts/file2alias.c:161: error: `CCW_DEVICE_ID_MATCH_CU_TYPE' undeclared (first use in this function)
scripts/file2alias.c:161: error: dereferencing pointer to incomplete type
scripts/file2alias.c:161: error: dereferencing pointer to incomplete type
scripts/file2alias.c:161: error: dereferencing pointer to incomplete type
scripts/file2alias.c:161: error: dereferencing pointer to incomplete type
scripts/file2alias.c:163: error: dereferencing pointer to incomplete type
scripts/file2alias.c:163: error: `CCW_DEVICE_ID_MATCH_CU_MODEL' undeclared (first use in this function)
scripts/file2alias.c:163: error: dereferencing pointer to incomplete type
scripts/file2alias.c:163: error: dereferencing pointer to incomplete type
scripts/file2alias.c:163: error: dereferencing pointer to incomplete type
scripts/file2alias.c:163: error: dereferencing pointer to incomplete type
scripts/file2alias.c:165: error: dereferencing pointer to incomplete type
scripts/file2alias.c:165: error: `CCW_DEVICE_ID_MATCH_DEVICE_TYPE' undeclared (first use in this function)
scripts/file2alias.c:165: error: dereferencing pointer to incomplete type
scripts/file2alias.c:165: error: dereferencing pointer to incomplete type
scripts/file2alias.c:165: error: dereferencing pointer to incomplete type
scripts/file2alias.c:165: error: dereferencing pointer to incomplete type
scripts/file2alias.c:167: error: dereferencing pointer to incomplete type
scripts/file2alias.c:167: error: dereferencing pointer to incomplete type
scripts/file2alias.c:167: error: dereferencing pointer to incomplete type
scripts/file2alias.c:167: error: dereferencing pointer to incomplete type
scripts/file2alias.c:167: error: dereferencing pointer to incomplete type
scripts/file2alias.c: In function `handle_moddevtable':
scripts/file2alias.c:227: error: invalid application of `sizeof' to an incomplete type
scripts/file2alias.c:230: error: invalid application of `sizeof' to an incomplete type
scripts/file2alias.c:233: error: invalid application of `sizeof' to an incomplete type
scripts/file2alias.c:236: error: invalid application of `sizeof' to an incomplete type
make[2]: *** [scripts/file2alias.o] Error 1
make[1]: *** [scripts] Error 2
make[1]: Leaving directory `/usr/src/kernel-headers-2.6.3-1-686'
make: *** [vmmon.ko] Error 2

Compilation exited abnormally with code 2 at Thu Apr 15 13:45:57





Reply to: