The build of virtualbox-ose-additions is failing on the following errors. kBuild: Compiling VBoxDnDHostR3Lib - /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/src/VBox/GuestHost/DragAndDrop/DnDUtils.cpp kBuild: Compiling VBoxDnDHostR3Lib - /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/src/VBox/HostServices/common/client.cpp 2 warnings generated. kBuild: Compiling VBoxDnDHostR3Lib - /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/src/VBox/HostServices/common/message.cpp In file included from /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/src/VBox/HostServices/common/client.cpp:25: /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:201:22: error: no member named 'auto_ptr' in namespace 'std' std::auto_ptr<AbstractService> apService; ~~~~~^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:201:31: error: 'AbstractService' does not refer to a value std::auto_ptr<AbstractService> apService; ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:178:7: note: declared here class AbstractService: public RTCNonCopyable ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:201:48: error: use of undeclared identifier 'apService' std::auto_ptr<AbstractService> apService; ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:205:21: error: use of undeclared identifier 'apService' apService = std::auto_ptr<AbstractService>(new T(pTable->pHelpers)); ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:205:38: error: no member named 'auto_ptr' in namespace 'std' apService = std::auto_ptr<AbstractService>(new T(pTable->pHelpers)); ~~~~~^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:205:47: error: 'AbstractService' does not refer to a value apService = std::auto_ptr<AbstractService>(new T(pTable->pHelpers)); ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:178:7: note: declared here class AbstractService: public RTCNonCopyable ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:234:26: error: use of undeclared identifier 'apService' rc = apService->init(pTable); ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:238:45: error: use of undeclared identifier 'apService' pTable->pvService = apService.release(); ^ 8 errors generated. kmk: *** [/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release/obj/VBoxDnDHostR3Lib/src/VBox/HostServices/common/client.o] Error 1 The failing command: @c++ -c -O2 -g -pipe -pedantic -Wshadow -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-unused-parameter -Wno-language-extension-token -Wno-gnu-folding-constant -Wno-gnu-anonymous-struct -Wno-string-plus-int -Wno-nested-anon-types -Wno-variadic-macros -Wno-long-long -Wno-return-type-c-linkage -Wno-overloaded-virtual -Wno-array-bounds -Wno-ignored-qualifiers -Wno-variadic-macros -O2 -mtune=generic -fno-omit-frame-pointer -fno-strict-aliasing -fvisibility=hidden -DVBOX_HAVE_VISIBILITY_HIDDEN -DRT_USE_VISIBILITY_DEFAULT -fvisibility-inlines-hidden -fPIC -m64 -I/usr/local/include -I/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release/obj/VBoxDnDHostR3Lib/dtrace -I/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include -I/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release -DVBOX -DVBOX_OSE -DVBOX_WITH_64_BITS_GUESTS -DRT_OS_FREEBSD -D__FREEBSD__ -DRT_ARCH_AMD64 -D__AMD64__ -DVBOX_WITH_DEBUGGER -DVBOX_WITH_HARDENING -DRTPATH_APP_PRIVATE=\"/usr/local/lib/virtualbox\" -DRTPATH_APP_PRIVATE_ARCH=\"/usr/local/lib/virtualbox\" -DRTPATH_SHARED_LIBS=\"/usr/local/lib/virtualbox\" -DRTPATH_APP_DOCS=\"/usr/local/lib/virtualbox\" -DIN_RING3 -DGC_ARCH_BITS=64 -DPIC -DHC_ARCH_BITS=64 -Wp,-MD,/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release/obj/VBoxDnDHostR3Lib/src/VBox/HostServices/common/client.o.dep -Wp,-MT,/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release/obj/VBoxDnDHostR3Lib/src/VBox/HostServices/common/client.o -Wp,-MP -o /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release/obj/VBoxDnDHostR3Lib/src/VBox/HostServices/common/client.o /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/src/VBox/HostServices/common/client.cpp kmk: *** Waiting for unfinished jobs.... In file included from /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/src/VBox/HostServices/common/message.cpp:18: /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:201:22: error: no member named 'auto_ptr' in namespace 'std' std::auto_ptr<AbstractService> apService; ~~~~~^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:201:31: error: 'AbstractService' does not refer to a value std::auto_ptr<AbstractService> apService; ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:178:7: note: declared here class AbstractService: public RTCNonCopyable ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:201:48: error: use of undeclared identifier 'apService' std::auto_ptr<AbstractService> apService; ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:205:21: error: use of undeclared identifier 'apService' apService = std::auto_ptr<AbstractService>(new T(pTable->pHelpers)); ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:205:38: error: no member named 'auto_ptr' in namespace 'std' apService = std::auto_ptr<AbstractService>(new T(pTable->pHelpers)); ~~~~~^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:205:47: error: 'AbstractService' does not refer to a value apService = std::auto_ptr<AbstractService>(new T(pTable->pHelpers)); ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:178:7: note: declared here class AbstractService: public RTCNonCopyable ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:234:26: error: use of undeclared identifier 'apService' rc = apService->init(pTable); ^ /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include/VBox/HostServices/Service.h:238:45: error: use of undeclared identifier 'apService' pTable->pvService = apService.release(); ^ 8 errors generated. kmk: *** [/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release/obj/VBoxDnDHostR3Lib/src/VBox/HostServices/common/message.o] Error 1 The failing command: @c++ -c -O2 -g -pipe -pedantic -Wshadow -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-unused-parameter -Wno-language-extension-token -Wno-gnu-folding-constant -Wno-gnu-anonymous-struct -Wno-string-plus-int -Wno-nested-anon-types -Wno-variadic-macros -Wno-long-long -Wno-return-type-c-linkage -Wno-overloaded-virtual -Wno-array-bounds -Wno-ignored-qualifiers -Wno-variadic-macros -O2 -mtune=generic -fno-omit-frame-pointer -fno-strict-aliasing -fvisibility=hidden -DVBOX_HAVE_VISIBILITY_HIDDEN -DRT_USE_VISIBILITY_DEFAULT -fvisibility-inlines-hidden -fPIC -m64 -I/usr/local/include -I/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release/obj/VBoxDnDHostR3Lib/dtrace -I/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/include -I/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release -DVBOX -DVBOX_OSE -DVBOX_WITH_64_BITS_GUESTS -DRT_OS_FREEBSD -D__FREEBSD__ -DRT_ARCH_AMD64 -D__AMD64__ -DVBOX_WITH_DEBUGGER -DVBOX_WITH_HARDENING -DRTPATH_APP_PRIVATE=\"/usr/local/lib/virtualbox\" -DRTPATH_APP_PRIVATE_ARCH=\"/usr/local/lib/virtualbox\" -DRTPATH_SHARED_LIBS=\"/usr/local/lib/virtualbox\" -DRTPATH_APP_DOCS=\"/usr/local/lib/virtualbox\" -DIN_RING3 -DGC_ARCH_BITS=64 -DPIC -DHC_ARCH_BITS=64 -Wp,-MD,/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release/obj/VBoxDnDHostR3Lib/src/VBox/HostServices/common/message.o.dep -Wp,-MT,/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release/obj/VBoxDnDHostR3Lib/src/VBox/HostServices/common/message.o -Wp,-MP -o /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/out/freebsd.amd64/release/obj/VBoxDnDHostR3Lib/src/VBox/HostServices/common/message.o /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-6.1.46/src/VBox/HostServices/common/message.cpp kmk: *** Exiting with status 2 *** Error code 2 Stop. make[1]: stopped in /usr/ports/emulators/virtualbox-ose-additions *** Error code 1 Stop. make: stopped in /usr/ports/emulators/virtualbox-ose-additions see also https://www.mail-archive.com/freebsd-pkg-fallout@freebsd.org/msg2168502.html
(In reply to rachid from comment #0) Compiling with devel/llvm14 gets me past the C++ but back to the VFS incompatibility in bug #271515 John groenveld@acm.org
Created attachment 244159 [details] Patch to fix build errors on 14-CURRENT I've made a patch that fixes build errors on 14-CURRENT.
(In reply to takahiro.kurosawa from comment #2) LGTM. Tested on 13.2 and CURRENT. Both compile. If someone from vbox@FreeBSD.org approves it, I'm going to merge it.
Created attachment 244169 [details] VBoxManage showvminfo --machinereadable fbsd14 (In reply to takahiro.kurosawa from comment #2) On host and guest: $ uname -srvKU FreeBSD 14.0-ALPHA1 FreeBSD 14.0-ALPHA1 amd64 1400094 #0 main-n264678-136fc495615f: Fri Aug 11 08:18:04 UTC 2023 root@releng1.nyi.freebsd.org:/usr/obj/usr/src/amd64.amd64/sys/GENERIC 1400094 1400094 I have attached VBoxManage showvminfo --machinereadable fbsd14. Here's the crash in guest upon kldload vboxguest: KLD '/boot/modules/vboxguest.ko' is newer than the linker.hints file vboxguest0 port 0xc140-0xc15f mem 0x88000000-0x883fffff,0x88420000-0x88423fff irq 20 at device 4.0 on pci0 panic: mutex Giant owned at /usr/src/sys/kern/kern_synch.c:501 cpuid = 0 time = 1692264146 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe005f9624b0 vpanic() at vpanic+0x132/frame 0xfffffe005f9625e0 panic() at panic+0x43/frame 0xfffffe005f962640 __mtx_assert() at __mtx_assert+0xc4/frame 0xfffffe005f962650 mi_switch() at mi_switch+0x6f/frame 0xfffffe005f962670 sleepq_switch() at sleepq_switch+0x104/frame 0xfffffe005f9626b0 rtR0SemEventMultiBsdWait() at rtR0SemEventMultiBsdWait+0x293/frame 0xfffffe005f962710 vgdrvHgcmAsyncWaitCallbackWorker() at vgdrvHgcmAsyncWaitCallbackWorker+0x110/frame 0xfffffe005f962750 VbglR0HGCMInternalConnect() at VbglR0HGCMInternalConnect+0x12d/frame 0xfffffe005f9627a0 vgdrvIoCtl_HGCMConnect() at vgdrvIoCtl_HGCMConnect+0x42/frame 0xfffffe005f9627e0 VGDrvCommonProcessOptionsFromHost() at VGDrvCommonProcessOptionsFromHost+0x1e8/frame 0xfffffe005f9628e0 vgdrvFreeBSDAttach() at vgdrvFreeBSDAttach+0x1dc/frame 0xfffffe005f962920 device_attach() at device_attach+0x3bc/frame 0xfffffe005f962960 device_probe_and_attach() at device_probe_and_attach+0x70/frame 0xfffffe005f962990 pci_driver_added() at pci_driver_added+0xf2/frame 0xfffffe005f9629d0 devclass_driver_added() at devclass_driver_added+0x39/frame 0xfffffe005f962a10 devclass_add_driver() at devclass_add_driver+0x138/frame 0xfffffe005f962a50 module_register_init() at module_register_init+0xb0/frame 0xfffffe005f962a80 linker_load_module() at linker_load_module+0xbd2/frame 0xfffffe005f962d80 kern_kldload() at kern_kldload+0x16f/frame 0xfffffe005f962dd0 sys_kldload() at sys_kldload+0x5c/frame 0xfffffe005f962e00 amd64_syscall() at amd64_syscall+0x138/frame 0xfffffe005f962f30 fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe005f962f30 --- syscall (304, FreeBSD ELF64, kldload), rip = 0x709e5112ba, rsp = 0x709d3c7da8, rbp = 0x709d3c8320 --- KDB: enter: panic [ thread pid 832 tid 100160 ] Stopped at kdb_enter+0x32: movq $0,0xe29a73(%rip) db> John groenveld@acm.org
(In reply to groenveld from comment #4) Is this related to the build? We should fix the build in the first step and then any runtime issues.
Created attachment 244185 [details] Patch to workaround panic on the INVARIANTS kernel (In reply to groenveld from comment #4) Hi John, Here is an additional patch for you. You need to "make config" and enable the INVARIANTS option before building the port. Please test the patch and report how it works.
(In reply to takahiro.kurosawa from comment #6) Thank you, that worked: # uname -srvKU FreeBSD 14.0-ALPHA1 FreeBSD 14.0-ALPHA1 amd64 1400094 #0 main-n264678-136fc495615f: Fri Aug 11 08:18:04 UTC 2023 root@releng1.nyi.freebsd.org:/usr/obj/usr/src/amd64.amd64/sys/GENERIC 1400094 1400094 # kldload vboxguest warning: KLD '/boot/modules/vboxguest.ko' is newer than the linker.hints file vboxguest0 port 0xc140-0xc15f mem 0x88000000-0x883fffff,0x88420000-0x88423fff irq 20 at device 4.0 on pci0 vboxguest: loaded successfully John groenveld@acm.org
I am seeing the same errors building virtualbox-ose-additions using poudriere on 13.2-stable on amd64. error: no member named 'auto_ptr' in namespace 'std' std::auto_ptr<AbstractService> apService;
I can confirm that the first patch to correct build errors on 14-CURRENT also works to build virtualbox-ose-additions on my 13.2-stable amd64 machine.
With the patch "Patch to fix build errors on 14-CURRENT" virtualbox-ose-additions 6.1.46 builds _and_ runs fine on my 14-CURRENT guest in a VirtualBox on Windows 10 host.
(In reply to Ronald Klop from comment #10) BTW: FreeBSD 14.0-CURRENT (GENERIC-NODEBUG) #22 main-n263787-5581cf903fda-dirty: Sun Jun 25 00:27:12 CEST 2023 So not the latest version. Please commit the build fix so it is easier to test the pkg.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=de862b33d480559301360c44d840ae12ee4bcfb4 commit de862b33d480559301360c44d840ae12ee4bcfb4 Author: Kurosawa Takahiro <takahiro.kurosawa@gmail.com> AuthorDate: 2023-09-12 11:55:04 +0000 Commit: Corvin Köhne <corvink@FreeBSD.org> CommitDate: 2023-09-12 12:00:14 +0000 emulators/virtualbox-ose: fix build errors on CURRENT PR: 272991 Reviewed by: corvink, manu Approved by: manu, vbox (maintainer timeout) emulators/virtualbox-ose-additions/Makefile | 2 ++ .../files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs.h | 10 ++++++++-- .../patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vfsops.c | 2 +- .../patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c | 2 +- 4 files changed, 12 insertions(+), 4 deletions(-)