From owner-freebsd-current@FreeBSD.ORG Mon Jan 4 08:15:12 2010 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5C715106566B for ; Mon, 4 Jan 2010 08:15:12 +0000 (UTC) (envelope-from james-freebsd-current@jrv.org) Received: from mail.jrv.org (adsl-70-243-84-13.dsl.austtx.swbell.net [70.243.84.13]) by mx1.freebsd.org (Postfix) with ESMTP id E92A98FC1B for ; Mon, 4 Jan 2010 08:15:11 +0000 (UTC) Received: from kremvax.housenet.jrv (kremvax.housenet.jrv [192.168.3.124]) by mail.jrv.org (8.14.3/8.14.3) with ESMTP id o048F9FK078676; Mon, 4 Jan 2010 02:15:09 -0600 (CST) (envelope-from james-freebsd-current@jrv.org) Authentication-Results: mail.jrv.org; domainkeys=pass (testing) header.from=james-freebsd-current@jrv.org DomainKey-Signature: a=rsa-sha1; s=enigma; d=jrv.org; c=nofws; q=dns; h=message-id:date:from:user-agent:mime-version:to:cc:subject: references:in-reply-to:content-type:content-transfer-encoding; b=kIJ08st54tsSLuhpSq8FSrPSJbia0ffGnmkP/hAKKtx9Rw1jye0yrPQ3DxZqqYvR+ 2GFUH2A9QsMMDz7k47mmUlDJzafKnZ93Q9k7YpcNoyjMXkxkZ/ubTcv+cDu0OGoIPIR 39hX7bQjINZKCIoF3OXsvRkOeha6vPR1tboCcnc= Message-ID: <4B41A38D.6050007@jrv.org> Date: Mon, 04 Jan 2010 02:15:09 -0600 From: "James R. Van Artsdalen" User-Agent: Thunderbird 2.0.0.23 (Macintosh/20090812) MIME-Version: 1.0 To: John Baldwin References: <20091227232425.GA38213@bsdcrew.de> <200912281104.30930.jhb@freebsd.org> <179b97fb0912280846t286beec2p7307f255f96d89a3@mail.gmail.com> <200912281244.35106.jhb@freebsd.org> In-Reply-To: <200912281244.35106.jhb@freebsd.org> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: ports@freebsd.org, freebsd-emulation@freebsd.org, freebsd-current@freebsd.org, Martin Wilke Subject: Re: Call for tester: VirtualBox 3.1.2 for FreeBSD X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Jan 2010 08:15:12 -0000 John Baldwin wrote: >> I'm seeing this as well: >> >> kernel: link_elf_obj: symbol _Z6strlenPKc undefined >> >> ...which, I suppose, is the real kldload error message. > > Looks like it is trying to use a C++ named-version of strlen(): > > % echo _Z6strlenPKc | c++filt > strlen(char const*) > > Is the kernel module compiled using c++ instead of cc? Here is where the symbol is coming from: [root@xwin /usr/ports/emulators/virtualbox-ose-additions]# find . -name \*.o | while read X; do nm "$X" | grep _Z6strlenPKc && echo $X; done U _Z6strlenPKc ./work/VirtualBox-3.1.2_OSE/out/freebsd.amd64/release/obj/RuntimeGuestR0/common/misc/thread.o U _Z6strlenPKc ./work/VirtualBox-3.1.2_OSE/out/freebsd.amd64/release/obj/RuntimeGuestR0/common/log/log.o U _Z6strlenPKc ./work/VirtualBox-3.1.2_OSE/out/freebsd.amd64/release/obj/RuntimeGuestR0/common/path/RTPathAbsEx.o U _Z6strlenPKc ./work/VirtualBox-3.1.2_OSE/out/freebsd.amd64/release/obj/RuntimeGuestR0/common/path/RTPathAppend.o U _Z6strlenPKc ./work/VirtualBox-3.1.2_OSE/out/freebsd.amd64/release/obj/RuntimeGuestR0/common/string/strformattype.o U _Z6strlenPKc ./work/VirtualBox-3.1.2_OSE/out/freebsd.amd64/release/obj/RuntimeGuestR0/common/string/string.o [root@xwin /usr/ports/emulators/virtualbox-ose-additions]# And here are some presumed source files: [root@xwin /usr/ports/emulators/virtualbox-ose-additions]# find . -name thread.c\* ./work/VirtualBox-3.1.2_OSE/src/VBox/Runtime/common/misc/thread.cpp ./work/VirtualBox-3.1.2_OSE/src/VBox/Additions/x11/VBoxClient/thread.cpp ./work/VirtualBox-3.1.2_OSE/src/libs/xpcom18a4/nsprpub/pr/src/cplus/tests/thread.cpp [root@xwin /usr/ports/emulators/virtualbox-ose-additions]# src/VBox/Runtime/common/misc/thread.cpp contains: #include include/iprt/string.h has this: #elif defined(RT_OS_FREEBSD) && defined(_KERNEL) # include It seems sys/libkern.h is C namespace but thread.cpp or iprt/string.h isn't using extern "C" to make it that.