ISSUE: After emerging virtualbox-4.2.0-r1.ebuild with USE=vnc , vnc module builded but is not installed. gentoo / # VBoxManage setproperty vrdeextpack VNC VBoxManage: error: Failed to create the VirtualBox object! VBoxManage: error: Code NS_ERROR_FACTORY_NOT_REGISTERED (0x80040154) - Class not registered (extended info not available) VBoxManage: error: Most likely, the VirtualBox COM server is not running or failed to start. gentoo / # cd /var/tmp/portage/app-emulation/virtualbox-4.2.0-r1/work/VirtualBox-4.2.0/ gentoo / # find ./ -iname "*vnc*" ./src/VBox/ExtPacks/VNC ./src/VBox/ExtPacks/VNC/VBoxVNCMain.cpp ./src/VBox/ExtPacks/VNC/VBoxVNC.cpp ./out/linux.amd64/release/obj/VBoxVNCIns.ins ./out/linux.amd64/release/obj/VBoxVNC ./out/linux.amd64/release/obj/VBoxVNC/VBoxVNC.o.dep ./out/linux.amd64/release/obj/VBoxVNC/VBoxVNC.so ./out/linux.amd64/release/obj/VBoxVNC/VBoxVNC.o ./out/linux.amd64/release/obj/VBoxVNC/VBoxVNC.dep ./out/linux.amd64/release/obj/VBoxVNCIns ./out/linux.amd64/release/obj/VBoxVNCMain ./out/linux.amd64/release/obj/VBoxVNCMain/VBoxVNCMain.o ./out/linux.amd64/release/obj/VBoxVNCMain/VBoxVNCMain.dep ./out/linux.amd64/release/obj/VBoxVNCMain/VBoxVNCMain.so ./out/linux.amd64/release/obj/VBoxVNCMain/VBoxVNCMain.o.dep ./out/linux.amd64/release/bin/ExtensionPacks/VNC ./out/linux.amd64/release/bin/ExtensionPacks/VNC/linux.amd64/VBoxVNC.so ./out/linux.amd64/release/bin/ExtensionPacks/VNC/linux.amd64/VBoxVNCMain.so i manually copyed ./out/linux.amd64/release/bin/ExtensionPacks to /usr/lib64/virtualbox/ gentoo / # VBoxManage setproperty vrdeextpack VNC VBoxManage: error: Failed to load '/usr/lib64/virtualbox/ExtensionPacks/VNC/ExtPack.xml': Invalid version string: 4.2.0_Gentoo_ VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ExtPack, interface IExtPack, callee nsISupports VBoxManage: error: Context: "COMSETTER(DefaultVRDEExtPack)(Bstr(a->argv[1]).raw())" at line 854 of file VBoxManageMisc.cpp FIX: change version string: from 4.2.0_Gentoo_ to 4.2.0 gentoo / # VBoxManage setproperty vrdeextpack VNC gentoo / # VBoxManage createvm --name test --register gentoo / # VBoxManage modifyvm test --ostype Gentoo_64 --memory 1024 --audio none --vrde on --vrdeport 5900 --vrdeaddress 192.168.0.234 --vrdeproperty VNCPassword=234 gentoo / # VBoxHeadless -s test Oracle VM VirtualBox Headless Interface 4.2.0_Gentoo_ (C) 2008-2012 Oracle Corporation All rights reserved. 19/10/2012 12:35:01 Listening for VNC connections on TCP port 5900 VRDE server is listening on port 5900. 19/10/2012 12:35:01 Can't run in background, because I don't have PThreads! ISSUE_2: connection estableshes successfully, but vnc client shows nothing - no screen appears. Vnc itself reports this as "connecting..." : gentoo / # netstat | grep 5900 tcp 0 0 gentoo:5900 192.168.0.218:2258 ESTABLISHED
I incorrectly stated the first error :( -gentoo / # VBoxManage setproperty vrdeextpack VNC -VBoxManage: error: Failed to create the VirtualBox object! -VBoxManage: error: Code NS_ERROR_FACTORY_NOT_REGISTERED (0x80040154) - Class not registered (extended info not available) -VBoxManage: error: Most likely, the VirtualBox COM server is not running or failed to start. +gentoo / # VBoxManage setproperty vrdeextpack VNC +VBoxManage: error: No extension pack by the name 'VNC' was found +VBoxManage: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component ExtPackManager, interface IExtPackManager, callee nsISupports +VBoxManage: error: Context: "COMSETTER(DefaultVRDEExtPack)(Bstr(a->argv[1]).raw())" at line 854 of file VBoxManageMisc.cpp
The problem is we need to distinguish our builds from the official builds done by Oracle. So we need to alter the version string. Any chance we can make the Module accepting our modified string?
Even in 4.3.0 no VNC is usable because it's not going to be installed. @Lars Wendler: isn't the module loadable if it would be at least there? First problem to solve here I think is to make sure the files for vnc (ExtensionPacks/VNC) are getting installed and not only built inside the sandbox and be cleaned up after emerge.
This is still true with 5.1.8. In addition, libvncserver must be built with USE=threads, otherwise the VNC module doesn't work (it loads and accepts connections, but the connection just hangs - VNC viewer doesn't even ask for password).
Still the same: ------------------------------------------------------- ~$ VBoxManage setproperty vrdeextpack VNC VBoxManage: error: No extension pack by the name 'VNC' was found VBoxManage: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component ExtPackManagerWrap, interface IExtPackManager, callee nsISupports VBoxManage: error: Context: "COMSETTER(DefaultVRDEExtPack)(Bstr(a->argv[1]).raw())" at line 887 of file VBoxManageMisc.cpp --------------------------------------------------------
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=226c5ac5f4ee6399f18b2e2b0a8e4b9586e780e4 commit 226c5ac5f4ee6399f18b2e2b0a8e4b9586e780e4 Author: Lars Wendler <polynomial-c@gentoo.org> AuthorDate: 2019-04-20 11:30:50 +0000 Commit: Lars Wendler <polynomial-c@gentoo.org> CommitDate: 2019-04-20 11:31:22 +0000 app-emulation/virtualbox: Revbumps to finally install vnc ExtPack also install dtrace ExtPack if requested. Closes: https://bugs.gentoo.org/438930 Package-Manager: Portage-2.3.64, Repoman-2.3.12 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> app-emulation/virtualbox/metadata.xml | 1 + ...box-5.2.28.ebuild => virtualbox-5.2.28-r1.ebuild} | 20 ++++++++++++++++++-- ...albox-6.0.6.ebuild => virtualbox-6.0.6-r1.ebuild} | 20 ++++++++++++++++++-- 3 files changed, 37 insertions(+), 4 deletions(-)