#1902 closed defect (fixed)
VBOX_PATH_X11_XORG_1_x / x headers not found
Reported by: | elbeardmorez | Owned by: | |
---|---|---|---|
Component: | other | Version: | |
Keywords: | svn 1.6.4 xorg | Cc: | |
Guest type: | other | Host type: | Linux |
Description
I've finally built 2008-Aug-02 svn..
However I couldn't build it without symlinking my git GL X11 and xorg include folders over to usr/include and hardcoding my /opt/xorg/include path in a few makefiles. I don't think the build process can cope with non-standard x11 installs.
The configure script uses pkg-config and correctly finds X library and include paths, but whatever flags are set aren't visible throughout the whole build.
pkg-config --cflags --libs x11 = -I/opt/xorg/include -L/opt/xorg/lib -lX11
The following places required intervention..
1, HostServices/SharedOpenGL required GL headers
2, HostServices/SharedClipboard required X11, Xt
i added VBoxSharedClipboard_INCS.linux = /opt/xorg/include to the makefile
3, ..half a dozen complaints compiling VBox/Additions/x11/..
..for example, and I found this strange, my makefile for vboxvideo:
vboxvideo_drv_71_INCS = \ $(VBOX_PATH_X11_XORG_7_1) \ $(VBOX_PATH_X11_XORG_7_1)/X11 \ $(VBOX_PATH_X11_XORG_7_1)/xorg vboxvideo_drv_15_INCS = \ $(VBOX_PATH_X11_XORG_1_5) \ $(VBOX_PATH_X11_XORG_1_5)/X11 \ $(VBOX_PATH_X11_XORG_1_5)/xorg \ /opt/xorg/include \ /opt/xorg/include/X11
Both drivers were made.. .the first uses VBOX_PATH_X11_XORG_7_1 to successfully reference the headers that are included in the tarball. ..however, although I see VBOX_PATH_X11_XORG_1_5 is declared in the exact same manner in the Config.kmk file, the later fails.. ..as as you see I needed to append my custom include paths.
Asides..
1, I also had to append these paths in src/VBox/Additions/x11/xmouse/Makefile.kmk
vboxmouse_drv_INCS := \ $(KBUILD_PATH)/include/iprt \ $(KBUILD_PATH)/include/VBox
2, I actually resorted to trying the 'stable' 1.6.4 ose but immediately ran into problems
There seems to be missing makefiles at src/apps/Makefile.kmk and /src/apps/tunctrl/Makefile.kmk
..and if they're purposely missing ..then stable doesn't build without them!! So i took the svn versions ..but had to change the constants 'SUB_DEPTH' back to 'DEPTH' in each case.
The above problems with not finding the xorg include paths is also present in this 1.6.4 release!
However this time SharedClipboard/Makefile.kmk wouldn't use my VBoxSharedClipboard_INCS.linux hack.. ..hence I had to give up and re-revert back to the svn build for which I had got further with.
Anyway it's built now :) ..I can't insert vboxadd or vboxvfs kernel modules into my 2.6.26 kernel due to..
FATAL: Error inserting vboxadd (/lib/modules/2.6.26/extra/vboxadd.ko): No such device
vboxadd: VirtualBox PCI device not found.
and
FATAL: Error inserting vboxvfs (/lib/modules/2.6.26/extra/vboxvfs.ko): Unknown symbol in module, or unknown parameter (see dmesg)
vboxvfs: Unknown symbol vboxadd_cmc_open vboxvfs: Unknown symbol RTLogBackdoorPrintf vboxvfs: Unknown symbol vboxadd_cmc_ctl_guest_filter_mask vboxvfs: Unknown symbol RTErrConvertToErrno vboxvfs: Unknown symbol vboxadd_cmc_call vboxvfs: Unknown symbol RTAssertDoBreakpoint vboxvfs: Unknown symbol vboxadd_cmc_close vboxvfs: Unknown symbol AssertMsg2 vboxvfs: Unknown symbol AssertMsg1
..but I think i've had all I can take for today.
Change History (4)
comment:1 by , 16 years ago
comment:2 by , 16 years ago
Hi frank,
Thanks for the reply.
The link you mentioned notes the missing makefiles, good to know someone is on to that one.. ..and as for my latter comments about inserting additional kernel modules.. ..it was a long day, and I was being stupid (I built host/guest the other way around a few months back).
However, I think the main issue still stands though. My build is x86, 'fedora9'-ish (I have a lot of large packages built from their development repositories) ..one of which is xorg-x11, and the distro packages have been well and truly zapped. 'Working out of the box' I assume would hold true on any vanilla distro setup, but I think this is because they will all use the standard /usr/include directory to hold the xorg headers, and hence no-one would ever notice these problems.
As mentioned, it seems that the build tries and fails to use any of the headers refered to by VBOX_PATH_X11_XORG_1_'x' defines.. and I can't get my head around why not. The example being vboxvideo_drv, the v7.1 driver build fine, presumably using VBOX_PATH_X11_XORG_7_1 to include the ./src/VBox/Additions/x11/x11include/7.1 paths ..but when the v1.5 driver builds, the includes cannot be found. VBOX_PATH_X11_XORG_1_5 points to the right place but these includes simply aren't used.. ..nor (as is the main point of this 'bug') are the x11 includes identified by the configure script as being at '/opt/xorg/include'.
comment:3 by , 16 years ago
Please attach the complete build log here. Important is the last error message of make where the complete command line of the compiler is reported.
Which build environment are you using? Ubuntu/AMD64? Compiling the OSE source should work out of the box but note http://vbox.innotek.de/pipermail/vbox-dev/2008-August/000707.html .
Regarding to your problem inserting vboxadd.ko into a 2.6.26 kernel: This will only work if you do this within a VirtualBox VM.