Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 05 Jun 2012 12:06:29 +0200
From:      Bernhard Froehlich <decke@FreeBSD.org>
To:        David Morgan <david.morgan@gmail.com>
Cc:        freebsd-emulation@freebsd.org
Subject:   Re: virtualbox-ose-additions broken?
Message-ID:  <b5002e1e29bae2e764f7d0b40f9a0126@bluelife.at>
In-Reply-To: <20120605084433.GD909@tomaw.net>
References:  <4FCD2657.4030106@pcbsd.org> "<1338874647.15905.2.camel@Nokia-N900-42-11>" <4FCDB195.5010009@FreeBSD.org> <20120605084433.GD909@tomaw.net>

next in thread | previous in thread | raw e-mail | index | archive | help
That was a good hint! It seems the newly added libsupc++ causes
that problems because until very recently the new operator symbols
were not included. They have been added on current as of r236177

http://svnweb.freebsd.org/base?view=revision&revision=236177

On 9-STABLE the situation is that libstdc++/libsupc++ was already
MFCd but that fix from head for thew new operator wasn't yet. So
it currently fails on 9-STABLE. According to David that fix for
the new operator also seems to have no affect on amd64 so the
symbols probably have a different name there.

I've already talked to DES about that and we need some nm output
of latest libsupc++ on HEAD / amd64 to find the symbol names
and add them to the map. So who can provide the nm output?


-- 
Bernhard Froehlich
http://www.bluelife.at/


On 05.06.2012 10:44, David Morgan wrote:
> On 10:13 Tue 05 Jun     , Andriy Gapon wrote:
>> on 05/06/2012 08:37 Bernhard Fröhlich said the following:
>> > Shit. I have only seen that compile errors on head yet but was 
>> unable to find out what caused it. It seems it was MFCd now. Any hints 
>> are very appreciated.
>>
>> It looks like a C compiler (cc) is used to link C++ code.
>> I think that adding -lstdc++ may fix the problem, but a better 
>> solution would be
>> to use c++  instead of cc.
>>
>
> That's correct - re-running the failing command with gcc gives the 
> same
> error, with g++ it succeeds. If I recall correctly adding -lstdc++
> doesn't fix it.
>
> A change was made to Version.map for libsupc++ recently, which
> apparently made this compile correctly on i386, but didn't solve the
> problem for me on amd64.
>
>
>> > Creating a PR is probably worthless as I am usually the only one 
>> that looks at them. emulation@ covers a wider audience of people that 
>> care about vbox and are able to debug and fix bugs. Thanks for the 
>> report and getting my attention!
>> >
>> >
>> > On Mo.,   4. Jun. 2012 23:19:19 CEST, Kris Moore <kris@pcbsd.org> 
>> wrote:
>> >
>> >> Before I file a PR, is anybody else experiencing this with the 
>> latest VB
>> >> on 9-STABLE?
>> >>
>> >> -------------------------
>> >>
>> >> kBuild: Linking VBoxClient
>> >> kBuild: Pass - Other Stuff
>> >> kBuild: Pass - Staging
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/clipboard.o:
>> >> In function `VBoxClient::GetClipboardService()':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/clipboard.cpp:305:
>> >> undefined reference to `operator new(unsigned long)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/clipboard.o:
>> >> In function `~Service':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/VBoxClient.h:38:
>> >> undefined reference to `operator delete(void*)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/clipboard.o:
>> >> In function `~ClipboardService':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/clipboard.cpp:282:
>> >> undefined reference to `operator delete(void*)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/seamless.o:
>> >> In function `VBoxClient::GetSeamlessService()':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/seamless.cpp:58:
>> >> undefined reference to `operator new(unsigned long)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/seamless.o:
>> >> In function `~VBoxGuestThreadFunction':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/thread.h:33:
>> >> undefined reference to `operator delete(void*)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/seamless.o:
>> >> In function `~VBoxGuestSeamlessObserver':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/seamless-glue.h:26:
>> >> undefined reference to `operator delete(void*)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/seamless.o:
>> >> In function `VBoxGuestWinCleanup(VBoxGuestWinInfo*, void*)':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/seamless-x11.h:81:
>> >> undefined reference to `operator delete(void*)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/seamless.o:
>> >> In function `~VBoxGuestSeamlessGuestThread':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/seamless.h:46:
>> >> undefined reference to `operator delete(void*)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/seamless.o:
>> >> In function `~VBoxGuestSeamlessGuestObserver':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/seamless.h:111:
>> >> undefined reference to `operator delete(void*)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/seamless.o:/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/seamless.h:79
>> >> : more undefined references to `operator delete(void*)' follow
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/seamless-x11.o:
>> >> In function `VBoxGuestWindowList::addWindow(unsigned long, bool, 
>> int,
>> >> int, int, int, int, XRectangle*)':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/seamless-x11.h:135:
>> >> undefined reference to `operator new(unsigned long)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/seamless-x11.h:135:
>> >> undefined reference to `operator new(unsigned long)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/display.o:
>> >> In function `VBoxClient::GetDisplayService()':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/display.cpp:243:
>> >> undefined reference to `operator new(unsigned long)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/display.o:
>> >> In function `~DisplayService':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/display.cpp:218:
>> >> undefined reference to `operator delete(void*)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/hostversion.o:
>> >> In function `VBoxClient::GetHostVersionService()':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/hostversion.cpp:211:
>> >> undefined reference to `operator new(unsigned long)'
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/hostversion.o:
>> >> In function `~HostVersionService':
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/src/VBox/Additions/x11/VBoxClient/hostversion.cpp:35:
>> >> undefined reference to `operator delete(void*)'
>> >> kmk: ***
>> >> 
>> [/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/VBoxClient]
>> >> Error 1
>> >> The failing command:
>> >> @cc                                   -m64     -o
>> ^^^^^^^^
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/VBoxClient
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd6
>> >> 4/release/obj/VBoxClient/main.o
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/src/VBox/GuestHost/SharedClipboard/clipboard-helper.o
>> >> /usr/ports/emulators/virtualbox-ose-addit
>> >> 
>> ions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/src/VBox/GuestHost/SharedClipboard/x11-clipboard.o
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/clipboa
>> >> rd.o
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/seamless.o
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/s
>> >> eamless-host.o
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/seamless-x11.o
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/ob
>> >> j/VBoxClient/thread.o
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/obj/VBoxClient/display.o
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/
>> >> obj/VBoxClient/hostversion.o     -L/usr/X11R6/lib32   
>> -L/usr/X11R6/lib
>> >> -L/usr/lib   -L/usr/X11R6/lib   -L/usr/local/lib     -liconv
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/lib/additions/
>> >> RuntimeGuestR3.a
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/release/lib/additions/VBoxGuestR3Lib.a
>> >>
>> >> 
>> /usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-4.1.16/out/freebsd.amd64/rel
>> >> ease/lib/additions/RuntimeGuestR3.a     -lX11     -lXrandr     
>> -lXt     -lsupc++
>> >>      -lgcc_eh     -lXext     -lXmu     -lpthread     -liconv *** 
>> Error code 2
>> >>
>> >> Stop in /usr/ports/emulators/virtualbox-ose-additions.
>>
>> --
>> Andriy Gapon
>> _______________________________________________
>> freebsd-emulation@freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-emulation
>> To unsubscribe, send any mail to 
>> "freebsd-emulation-unsubscribe@freebsd.org"
> _______________________________________________
> freebsd-emulation@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-emulation
> To unsubscribe, send any mail to 
> "freebsd-emulation-unsubscribe@freebsd.org"



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?b5002e1e29bae2e764f7d0b40f9a0126>