build error for 4.1.14 on Fedora 16 x86_64 with custom kerne

Discussions related to using the OSE version of VirtualBox.
Post Reply
incident41
Posts: 58
Joined: 14. May 2012, 18:50
Primary OS: Linux other
VBox Version: PUEL
Guest OSses: Windows 10 64-bit
Location: Italy

build error for 4.1.14 on Fedora 16 x86_64 with custom kerne

Post by incident41 »

Followed instructions on the Virtualbox wiki for Linux, but after getting configure happy with missing packages, my build (x86_64 on an up-to-date Fedora 16, 3.4.0-rc7 kernel) fails with several errors; here is the last part of my screen log:

Code: Select all

kBuild: Installing RuntimeR3NoCRTGCC => /share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/lib/RuntimeR3NoCRTGCC.a
kBuild: Installing RuntimeRC => /share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/lib/RuntimeRC.a
kBuild: Compiling RuntimeR0Drv - /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/alloc.cpp
kBuild: Compiling RuntimeR0Drv - /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp
kBuild: Compiling RuntimeR0Drv - /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapoffset.cpp
kBuild: Compiling RuntimeR0Drv - /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/checksum/md5.cpp
In file included from /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/alloc.cpp:38:0:
/share/vbox/VirtualBox-4.1.14/include/iprt/string.h: In function ‘char* RTLatin1PutCp(char*, RTUNICP)’:
/share/vbox/VirtualBox-4.1.14/include/iprt/string.h:1405:5: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive]
kmk: *** [/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/alloc.o] Error 1
The failing command:
@g++ -c -O2 -nostdinc -iwithprefix include -include /lib/modules/3.4.0-rc7/build/include/generated/autoconf.h -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-sign-compare -fno-stack-protector -O2 -mtune=generic -fno-omit-frame-pointer -fno-strict-aliasing -fno-common -include /share/vbox/VirtualBox-4.1.14/include/VBox/SUPDrvMangling.h -m64 -mno-red-zone -mcmodel=kernel -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-reorder-blocks -fno-asynchronous-unwind-tables -funit-at-a-time -Wno-sign-compare -fno-exceptions -fno-rtti -include /share/vbox/VirtualBox-4.1.14/include/VBox/SUPDrvMangling.h -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/r0drv/linux -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/include -I/lib/modules/3.4.0-rc7/build/include -I/lib/modules/3.4.0-rc7/build/include/asm-i386/mach-default -I/lib/modules/3.4.0-rc7/build/include/asm-x86/mach-default -I/lib/modules/3.4.0-rc7/build/arch/x86/include -I/lib/modules/3.4.0-rc7/build/arch/x86/include/asm/mach-default -I/lib/modules/3.4.0-rc7/build/arch/x86/include/generated -I/lib/modules/3.4.0-rc7/build/include -I/share/vbox/VirtualBox-4.1.14/include -I/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release -DVBOX -DVBOX_WITH_DEBUGGER -DVBOX_OSE -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_HARDENING -DRTPATH_APP_PRIVATE=\"/opt/VirtualBox\" -DRT_OS_LINUX -D_FILE_OFFSET_BITS=64 -DRT_ARCH_AMD64 -D__AMD64__ -D__KERNEL__ -DMODULE -DIN_RING0 -DIN_RT_R0 -DIN_RT_R0 -DRT_WITH_VBOX -DRT_WITHOUT_NOCRT_WRAPPERS -DRT_NO_EXPORT_SYMBOL -DMODULE -DKBUILD_MODNAME=KBUILD_STR\(vboxdrv\) -DKBUILD_BASENAME=KBUILD_STR\(vboxdrv\) -DIN_SUP_R0 -Wp,-MD,/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/alloc.o.dep -Wp,-MT,/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/alloc.o -Wp,-MP -o /share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/alloc.o /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/alloc.cpp
kmk: *** Waiting for unfinished jobs....
In file included from /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp:36:0:
/share/vbox/VirtualBox-4.1.14/include/iprt/asm.h: In function ‘uint32_t* ASMMemIsAllU32(const void*, size_t, uint32_t)’:
/share/vbox/VirtualBox-4.1.14/include/iprt/asm.h:3384:12: error: invalid conversion from ‘void*’ to ‘uint32_t* {aka unsigned int*}’ [-fpermissive]
In file included from /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/checksum/md5.cpp:54:0:
/share/vbox/VirtualBox-4.1.14/include/iprt/string.h: In function ‘char* RTLatin1PutCp(char*, RTUNICP)’:
/share/vbox/VirtualBox-4.1.14/include/iprt/string.h:1405:5: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive]
kmk: *** [/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/checksum/md5.o] Error 1
The failing command:
@g++ -c -O2 -nostdinc -iwithprefix include -include /lib/modules/3.4.0-rc7/build/include/generated/autoconf.h -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-sign-compare -fno-stack-protector -O2 -mtune=generic -fno-omit-frame-pointer -fno-strict-aliasing -fno-common -include /share/vbox/VirtualBox-4.1.14/include/VBox/SUPDrvMangling.h -m64 -mno-red-zone -mcmodel=kernel -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-reorder-blocks -fno-asynchronous-unwind-tables -funit-at-a-time -Wno-sign-compare -fno-exceptions -fno-rtti -include /share/vbox/VirtualBox-4.1.14/include/VBox/SUPDrvMangling.h -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/r0drv/linux -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/include -I/lib/modules/3.4.0-rc7/build/include -I/lib/modules/3.4.0-rc7/build/include/asm-i386/mach-default -I/lib/modules/3.4.0-rc7/build/include/asm-x86/mach-default -I/lib/modules/3.4.0-rc7/build/arch/x86/include -I/lib/modules/3.4.0-rc7/build/arch/x86/include/asm/mach-default -I/lib/modules/3.4.0-rc7/build/arch/x86/include/generated -I/lib/modules/3.4.0-rc7/build/include -I/share/vbox/VirtualBox-4.1.14/include -I/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release -DVBOX -DVBOX_WITH_DEBUGGER -DVBOX_OSE -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_HARDENING -DRTPATH_APP_PRIVATE=\"/opt/VirtualBox\" -DRT_OS_LINUX -D_FILE_OFFSET_BITS=64 -DRT_ARCH_AMD64 -D__AMD64__ -D__KERNEL__ -DMODULE -DIN_RING0 -DIN_RT_R0 -DIN_RT_R0 -DRT_WITH_VBOX -DRT_WITHOUT_NOCRT_WRAPPERS -DRT_NO_EXPORT_SYMBOL -DMODULE -DKBUILD_MODNAME=KBUILD_STR\(vboxdrv\) -DKBUILD_BASENAME=KBUILD_STR\(vboxdrv\) -DIN_SUP_R0 -Wp,-MD,/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/checksum/md5.o.dep -Wp,-MT,/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/checksum/md5.o -Wp,-MP -o /share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/checksum/md5.o /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/checksum/md5.cpp
In file included from /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp:39:0:
/share/vbox/VirtualBox-4.1.14/include/iprt/string.h: In function ‘char* RTLatin1PutCp(char*, RTUNICP)’:
/share/vbox/VirtualBox-4.1.14/include/iprt/string.h:1405:5: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive]
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp: In function ‘int VBoxHost_RTHeapSimpleInit(PRTHEAPSIMPLE, void*, size_t)’:
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp:320:25: error: invalid conversion from ‘void*’ to ‘PRTHEAPSIMPLEBLOCK {aka RTHEAPSIMPLEBLOCK*}’ [-fpermissive]
In file included from /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapoffset.cpp:36:0:
/share/vbox/VirtualBox-4.1.14/include/iprt/asm.h: In function ‘uint32_t* ASMMemIsAllU32(const void*, size_t, uint32_t)’:
/share/vbox/VirtualBox-4.1.14/include/iprt/asm.h:3384:12: error: invalid conversion from ‘void*’ to ‘uint32_t* {aka unsigned int*}’ [-fpermissive]/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp:321:25: error: invalid conversion from ‘void*’ to ‘PRTHEAPSIMPLEBLOCK {aka RTHEAPSIMPLEBLOCK*}’ [-fpermissive]

/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp:324:20: error: invalid conversion from ‘void*’ to ‘PRTHEAPSIMPLEFREE {aka RTHEAPSIMPLEFREE*}’ [-fpermissive]
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp:325:20: error: invalid conversion from ‘void*’ to ‘PRTHEAPSIMPLEFREE {aka RTHEAPSIMPLEFREE*}’ [-fpermissive]
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp: In function ‘RTHEAPSIMPLEBLOCK* rtHeapSimpleAllocBlock(PRTHEAPSIMPLEINTERNAL, size_t, size_t)’:
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp:478:32: error: invalid conversion from ‘void*’ to ‘PRTHEAPSIMPLEBLOCK {aka RTHEAPSIMPLEBLOCK*}’ [-fpermissive]
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp:535:32: error: invalid conversion from ‘void*’ to ‘PRTHEAPSIMPLEBLOCK {aka RTHEAPSIMPLEBLOCK*}’ [-fpermissive]
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp: In function ‘void rtHeapSimpleFreeBlock(PRTHEAPSIMPLEINTERNAL, PRTHEAPSIMPLEBLOCK)’:
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp:698:13: error: invalid conversion from ‘void*’ to ‘PRTHEAPSIMPLEFREE {aka RTHEAPSIMPLEFREE*}’ [-fpermissive]
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp:699:14: error: invalid conversion from ‘void*’ to ‘PRTHEAPSIMPLEFREE {aka RTHEAPSIMPLEFREE*}’ [-fpermissive]
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp:730:24: error: invalid conversion from ‘void*’ to ‘PRTHEAPSIMPLEFREE {aka RTHEAPSIMPLEFREE*}’ [-fpermissive]
In file included from /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapoffset.cpp:40:0:
/share/vbox/VirtualBox-4.1.14/include/iprt/string.h: In function ‘char* RTLatin1PutCp(char*, RTUNICP)’:
/share/vbox/VirtualBox-4.1.14/include/iprt/string.h:1405:5: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive]
kmk: *** [/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/heapsimple.o] Error 1
The failing command:
@g++ -c -O2 -nostdinc -iwithprefix include -include /lib/modules/3.4.0-rc7/build/include/generated/autoconf.h -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-sign-compare -fno-stack-protector -O2 -mtune=generic -fno-omit-frame-pointer -fno-strict-aliasing -fno-common -include /share/vbox/VirtualBox-4.1.14/include/VBox/SUPDrvMangling.h -m64 -mno-red-zone -mcmodel=kernel -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-reorder-blocks -fno-asynchronous-unwind-tables -funit-at-a-time -Wno-sign-compare -fno-exceptions -fno-rtti -include /share/vbox/VirtualBox-4.1.14/include/VBox/SUPDrvMangling.h -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/r0drv/linux -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/include -I/lib/modules/3.4.0-rc7/build/include -I/lib/modules/3.4.0-rc7/build/include/asm-i386/mach-default -I/lib/modules/3.4.0-rc7/build/include/asm-x86/mach-default -I/lib/modules/3.4.0-rc7/build/arch/x86/include -I/lib/modules/3.4.0-rc7/build/arch/x86/include/asm/mach-default -I/lib/modules/3.4.0-rc7/build/arch/x86/include/generated -I/lib/modules/3.4.0-rc7/build/include -I/share/vbox/VirtualBox-4.1.14/include -I/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release -DVBOX -DVBOX_WITH_DEBUGGER -DVBOX_OSE -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_HARDENING -DRTPATH_APP_PRIVATE=\"/opt/VirtualBox\" -DRT_OS_LINUX -D_FILE_OFFSET_BITS=64 -DRT_ARCH_AMD64 -D__AMD64__ -D__KERNEL__ -DMODULE -DIN_RING0 -DIN_RT_R0 -DIN_RT_R0 -DRT_WITH_VBOX -DRT_WITHOUT_NOCRT_WRAPPERS -DRT_NO_EXPORT_SYMBOL -DMODULE -DKBUILD_MODNAME=KBUILD_STR\(vboxdrv\) -DKBUILD_BASENAME=KBUILD_STR\(vboxdrv\) -DIN_SUP_R0 -Wp,-MD,/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/heapsimple.o.dep -Wp,-MT,/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/heapsimple.o -Wp,-MP -o /share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/heapsimple.o /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapsimple.cpp
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapoffset.cpp: In function ‘RTHEAPOFFSETBLOCK* rtHeapOffsetAllocBlock(PRTHEAPOFFSETINTERNAL, size_t, size_t)’:
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapoffset.cpp:510:32: error: invalid conversion from ‘void*’ to ‘PRTHEAPOFFSETBLOCK {aka RTHEAPOFFSETBLOCK*}’ [-fpermissive]
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapoffset.cpp:513:5: error: invalid conversion from ‘void*’ to ‘PRTHEAPOFFSETBLOCK {aka RTHEAPOFFSETBLOCK*}’ [-fpermissive]
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapoffset.cpp: In function ‘void rtHeapOffsetFreeBlock(PRTHEAPOFFSETINTERNAL, PRTHEAPOFFSETBLOCK)’:
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapoffset.cpp:706:13: error: invalid conversion from ‘void*’ to ‘PRTHEAPOFFSETFREE {aka RTHEAPOFFSETFREE*}’ [-fpermissive]
/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapoffset.cpp:707:14: error: invalid conversion from ‘void*’ to ‘PRTHEAPOFFSETFREE {aka RTHEAPOFFSETFREE*}’ [-fpermissive]
kmk: *** [/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/heapoffset.o] Error 1
The failing command:
@g++ -c -O2 -nostdinc -iwithprefix include -include /lib/modules/3.4.0-rc7/build/include/generated/autoconf.h -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-sign-compare -fno-stack-protector -O2 -mtune=generic -fno-omit-frame-pointer -fno-strict-aliasing -fno-common -include /share/vbox/VirtualBox-4.1.14/include/VBox/SUPDrvMangling.h -m64 -mno-red-zone -mcmodel=kernel -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-reorder-blocks -fno-asynchronous-unwind-tables -funit-at-a-time -Wno-sign-compare -fno-exceptions -fno-rtti -include /share/vbox/VirtualBox-4.1.14/include/VBox/SUPDrvMangling.h -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/r0drv/linux -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime -I/share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/include -I/lib/modules/3.4.0-rc7/build/include -I/lib/modules/3.4.0-rc7/build/include/asm-i386/mach-default -I/lib/modules/3.4.0-rc7/build/include/asm-x86/mach-default -I/lib/modules/3.4.0-rc7/build/arch/x86/include -I/lib/modules/3.4.0-rc7/build/arch/x86/include/asm/mach-default -I/lib/modules/3.4.0-rc7/build/arch/x86/include/generated -I/lib/modules/3.4.0-rc7/build/include -I/share/vbox/VirtualBox-4.1.14/include -I/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release -DVBOX -DVBOX_WITH_DEBUGGER -DVBOX_OSE -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_HARDENING -DRTPATH_APP_PRIVATE=\"/opt/VirtualBox\" -DRT_OS_LINUX -D_FILE_OFFSET_BITS=64 -DRT_ARCH_AMD64 -D__AMD64__ -D__KERNEL__ -DMODULE -DIN_RING0 -DIN_RT_R0 -DIN_RT_R0 -DRT_WITH_VBOX -DRT_WITHOUT_NOCRT_WRAPPERS -DRT_NO_EXPORT_SYMBOL -DMODULE -DKBUILD_MODNAME=KBUILD_STR\(vboxdrv\) -DKBUILD_BASENAME=KBUILD_STR\(vboxdrv\) -DIN_SUP_R0 -Wp,-MD,/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/heapoffset.o.dep -Wp,-MT,/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/heapoffset.o -Wp,-MP -o /share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/RuntimeR0Drv/common/alloc/heapoffset.o /share/vbox/VirtualBox-4.1.14/src/VBox/Runtime/common/alloc/heapoffset.cpp
kmk: *** Exiting with status 2
The Fedora kernel modules work fine, but I usually test out Torvalds kernels - and with this new laptop I moved from physical partitions to Virtualbox VMs...

Any tips would be welcome :D - Thanks in advance, --alessandro
incident41
Posts: 58
Joined: 14. May 2012, 18:50
Primary OS: Linux other
VBox Version: PUEL
Guest OSses: Windows 10 64-bit
Location: Italy

Re: build error for 4.1.14 on Fedora 16 x86_64 with custom k

Post by incident41 »

Okay, so I did a bit more homework :)

Adding a -fpermissive flag in Config.kmk as per diff below allows the build to continue...

Code: Select all

[asuardi@xbox VirtualBox-4.1.14]$ diff -urN Config.kmk.orig Config.kmk
--- Config.kmk.orig	2012-05-15 16:10:56.033472972 +0200
+++ Config.kmk	2012-05-15 21:14:25.489088442 +0200
@@ -2856,7 +2856,7 @@
 TEMPLATE_VBOXR0DRV_CFLAGS.amd64        = -m64 -mno-red-zone -mcmodel=kernel -mno-sse -mno-mmx -mno-sse2 -mno-3dnow \
 	-fno-reorder-blocks -ffreestanding -fno-asynchronous-unwind-tables -funit-at-a-time \
 	-Wno-sign-compare -Wdeclaration-after-statement
-TEMPLATE_VBOXR0DRV_CXXFLAGS            = $(filter-out -Wstrict-prototypes -Wno-pointer-sign -ffreestanding -Wdeclaration-after-statement -Werror-implicit-function-declaration,$(TEMPLATE_VBOXR0DRV_CFLAGS) $(TEMPLATE_VBOXR0DRV_CFLAGS.$(KBUILD_TARGET_ARCH))) -fno-exceptions -fno-rtti
+TEMPLATE_VBOXR0DRV_CXXFLAGS            = $(filter-out -Wstrict-prototypes -Wno-pointer-sign -ffreestanding -Wdeclaration-after-statement -Werror-implicit-function-declaration,$(TEMPLATE_VBOXR0DRV_CFLAGS) $(TEMPLATE_VBOXR0DRV_CFLAGS.$(KBUILD_TARGET_ARCH))) -fno-exceptions -fno-rtti -fpermissive
   ifndef VBOX_LINUX_VERSION_2_4
 # 2.6
 TEMPLATE_VBOXR0DRV_SYSSUFF             = .ko
However I found out several unchecked missing dependencies - that is, stuff that doesn't trigger 'configure' warnings.

In order, I:

- installed pam-devel
- installed zlib-static
- installed java-1.6.0-openjdk-devel
- created a symlink in /usr/lib/jvm from java-1.6.0 to java-6-openjdk
- installed glibc-static
- installed texlive-latex

At this point I'm presumably close to completing the build, but pdflatex itself doesn't seem to work and I *really* get no clue here, as I'm totally TeX-ignorant :oops:

Code: Select all

kBuild: Compiling VBoxDD2GC - /share/vbox/VirtualBox-4.1.14/src/VBox/Devices/PC/DevIoApic.cpp
kBuild: Compiling VBoxDD2GC - /share/vbox/VirtualBox-4.1.14/src/VBox/Devices/PC/DevSMC.cpp
kBuild: Pass - Other Stuff
kBuild: pdflatex /share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/manual/en_US/UserManual.tex (four passes) -> /share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/manual/en_US/UserManual.pdf
kBuild: pdflatex /share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/manual/fr_FR/UserManual.tex (four passes) -> /share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/manual/fr_FR/UserManual.pdf
kBuild: Pass - Staging
This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6)
 %&-line parsing enabled.
This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6)
 %&-line parsing enabled.
entering extended mode
entering extended mode
kmk: *** [/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/manual/fr_FR/UserManual.pdf] Error 1
kmk: *** Waiting for unfinished jobs....
kmk: *** [/share/vbox/VirtualBox-4.1.14/out/linux.amd64/release/obj/manual/en_US/UserManual.pdf] Error 1
kmk: *** Exiting with status 2
Again, tips welcome...

Thanks, --alessandro
incident41
Posts: 58
Joined: 14. May 2012, 18:50
Primary OS: Linux other
VBox Version: PUEL
Guest OSses: Windows 10 64-bit
Location: Italy

Re: build error for 4.1.14 on Fedora 16 x86_64 with custom k

Post by incident41 »

Nevermind - I ran the pdflatex command standalone, found the missing beramono.sty, googled... and found Perryg's post here

viewtopic.php?f=31&t=35892

Darn I was reinventing a perfect wheel :mrgreen:
incident41
Posts: 58
Joined: 14. May 2012, 18:50
Primary OS: Linux other
VBox Version: PUEL
Guest OSses: Windows 10 64-bit
Location: Italy

Re: build error for 4.1.14 on Fedora 16 x86_64 with custom k

Post by incident41 »

And since I love replying to myself 8)

The perfect wheel isn't really complete; apart from the -fpermissive Config.kmk patch I posted above, not all kernel modules get built by the instructions at Perryg's post... you also need to:

$ cd out/linux.amd64/release/bin/additions/src
$ make
# make install

I'm not finished yet, as I still can't get past the Code 10 error when inserting USB pendrives despite
- having installed the Extensions pack (they appear in the Virtualbox window)
- having an "Any" filter defined in the USB section
- seeing the USB device in "Captured" state (indeed it gets auto-unmounted from within the Linux host)
- having rebooted the Windows7 guest
- having tried two different USB pendrives

I'll try next to boot into the Fedora kernel and see if USB pendrives work there...
Perryg
Site Moderator
Posts: 34369
Joined: 6. Sep 2008, 22:55
Primary OS: Linux other
VBox Version: OSE self-compiled
Guest OSses: *NIX

Re: build error for 4.1.14 on Fedora 16 x86_64 with custom k

Post by Perryg »

Sorry but if you follow all of the information as indicated you will have a complete ready for distribution build. If not then you are missing a step somewhere.
Yes you can do what you just said *IF* you only want the guest addition, but not necessary if doing a complete build.
incident41
Posts: 58
Joined: 14. May 2012, 18:50
Primary OS: Linux other
VBox Version: PUEL
Guest OSses: Windows 10 64-bit
Location: Italy

Re: build error for 4.1.14 on Fedora 16 x86_64 with custom k

Post by incident41 »

Perryg wrote:Sorry but if you follow all of the information as indicated you will have a complete ready for distribution build. If not then you are missing a step somewhere.
Yes you can do what you just said *IF* you only want the guest addition, but not necessary if doing a complete build.
Thanks for the feedback, I appreciate that.

My idea was to have a way of only rebuilding what Fedora packages as kmod-VirtualBox-OSE for the specific kernel I'm running with, while keeping the userspace untouched - just as I was doing on my previous laptop for the Broadcom-STA driver for the 4322 wifi chip; that is
- build new kernel
- reboot into new kernel
- build new kernel modules not included in mainline

Do you have a pointer for docs I should read in order to achieve the above goal ?

Again many thanks.

--alessandro
Perryg
Site Moderator
Posts: 34369
Joined: 6. Sep 2008, 22:55
Primary OS: Linux other
VBox Version: OSE self-compiled
Guest OSses: *NIX

Re: build error for 4.1.14 on Fedora 16 x86_64 with custom k

Post by Perryg »

Nope no DOCs. Just what is in the source code, which is better documented than any I have seen for a long time.
See Fedora takes the source code from VirtualBox and changes it to fit their needs. This pretty much makes it useless to us as far as support goes.
In any case you need the complete source to actually compile with. The debug source is not intended to actually be used in a running environment. Regardless of the build though the depends. are always the same and even with custom kernels you must have matching headers and kernel syms for rpm builds.
Post Reply