VirtualBox

Opened 16 years ago

Closed 15 years ago

Last modified 14 years ago

#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 Frank Mehnert, 16 years ago

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.

comment:2 by elbeardmorez, 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 Frank Mehnert, 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.

comment:4 by Frank Mehnert, 15 years ago

Resolution: fixed
Status: newclosed

No response, closing.

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use