From owner-freebsd-current@FreeBSD.ORG Wed Oct 29 14:42:26 2014 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6D2C64CD; Wed, 29 Oct 2014 14:42:26 +0000 (UTC) Received: from mho-01-ewr.mailhop.org (mho-03-ewr.mailhop.org [204.13.248.66]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2A7F71B5; Wed, 29 Oct 2014 14:42:25 +0000 (UTC) Received: from [73.34.117.227] (helo=ilsoft.org) by mho-01-ewr.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1XjUS7-000H7e-RV; Wed, 29 Oct 2014 14:42:24 +0000 Received: from [172.22.42.240] (revolution.hippie.lan [172.22.42.240]) by ilsoft.org (8.14.9/8.14.9) with ESMTP id s9TEgMJ3080879; Wed, 29 Oct 2014 08:42:22 -0600 (MDT) (envelope-from ian@FreeBSD.org) X-Mail-Handler: Dyn Standard SMTP by Dyn X-Originating-IP: 73.34.117.227 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX1/B4Sc1bh6kg2sohNRodivT X-Authentication-Warning: paranoia.hippie.lan: Host revolution.hippie.lan [172.22.42.240] claimed to be [172.22.42.240] Subject: Re: buildkernel: make[2]: exec(ctfconvert) failed (No such file or directory) From: Ian Lepore To: Gyrd Thane Lange In-Reply-To: <20141029143850.5af41378@onyx.thanelange.no> References: <20141028235011.543be3ea@onyx.thanelange.no> <1414537299.17308.28.camel@revolution.hippie.lan> <20141029003515.28e26444@onyx.thanelange.no> <20141029012432.41e22c7a@onyx.thanelange.no> <20141029143850.5af41378@onyx.thanelange.no> Content-Type: text/plain; charset="us-ascii" Date: Wed, 29 Oct 2014 08:42:22 -0600 Message-ID: <1414593742.17308.72.camel@revolution.hippie.lan> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 FreeBSD GNOME Team Port Content-Transfer-Encoding: 7bit Cc: FreeBSD Current , NGie Cooper , Mark Johnston X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.18-1 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: Wed, 29 Oct 2014 14:42:26 -0000 On Wed, 2014-10-29 at 14:38 +0100, Gyrd Thane Lange wrote: > On Wed, 29 Oct 2014 01:24:32 +0100 > Gyrd Thane Lange wrote: > > > On Tue, 28 Oct 2014 16:45:47 -0700 > > NGie Cooper wrote: > > > > > On Tue, Oct 28, 2014 at 4:35 PM, Gyrd Thane Lange > > > wrote: > > > > On Tue, 28 Oct 2014 17:01:39 -0600 > > > > Ian Lepore wrote: > > > > > > > >> On Tue, 2014-10-28 at 23:50 +0100, Gyrd Thane Lange wrote: > > > >> > PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/src/tmp/usr/games:/sbin:/bin:/usr/sbin:/usr/bin > > > >> > > > >> Do a "make kernel-toolchain" which will build a new ctfconvert > > > >> and put it in the right place within /usr/obj to be used during > > > >> buildkernel. > > > > > > > > Thanks, I will try this (building now). But if it works I'll be > > > > somewhat confused. I thought kernel-toolchain was implicit when > > > > doing a full buildworld (which I've already done), and I already > > > > have a ctfconvert > > > > (/usr/obj/usr/src/cddl/usr.bin/ctfconvert/ctfconvert). > > > > Finished a make kernel-toolchain (but it left me with even less > > binaries than make buildworld): > > > > # find /usr/src/ /usr/obj -name ctfconvert -type f > > (nothing found) > > > > > > The problem looks more like buildkernel is ignoring the ctfconvert > > > > tool in /usr/obj/ and instead is expecting to find it in /usr/bin > > > > (or some such). > > > > > > It should be located in /usr/obj -- we should not expect the > > > tool in /usr/bin to be correct/compatible with the source tree. > > > > I agree. :) > > > > while waiting for a proper solution for this, I'll try looking at the > > Makefiles and bsd.*.mk files under /usr/src my self, but I have never > > looked at them before so I don't expect a speedy success. > > Discovered that the tools are set in /usr/src/share/mk/sys.mk: > > CTFCONVERT ?= ctfconvert > CTFMERGE ?= ctfmerge > DTRACE ?= dtrace > > I then set the following in my /etc/src.conf (NB! long lines): > > CTFCONVERT=env > LD_LIBRARY_PATH=/usr/obj/usr/src/cddl/lib/libctf/ /usr/obj/usr/src/cddl/usr.bin/ctfconvert/ctfconvert > CTFMERGE=env > LD_LIBRARY_PATH=/usr/obj/usr/src/cddl/lib/libctf /usr/obj/usr/src/cddl/usr.bin/ctfmerge/ctfmerge > DTRACE=env > LD_LIBRARY_PATH=/usr/obj/usr/src/cddl/lib/libctf:/usr/obj/usr/src/cddl/lib/libdtrace /usr/obj/usr/src/cddl/usr.sbin/dtrace/dtrace > > This allowed me to successfully build the kernel. > The important question to be asking at this point: Why are you the only person in the world who has had to do this? Until you have an answer to that, nothing is really fixed. The thing that's different for you than for most people, I guess, is that you originally built the system WITHOUT_CDDL then removed that option. That's almost certainly a factor somehow. Also, the copy of the tool within obj that it should use is not the copy you manually pointed to with those changes. When newer build tools are needed, they exist within /usr/obj/usr/src/tmp/. So... why doesn't ctfconvert exist for you in that location after making kernel-toolchain? -- Ian