From owner-freebsd-questions@freebsd.org Mon Jan 29 20:29:27 2018 Return-Path: Delivered-To: freebsd-questions@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 758AFEDCE4A for ; Mon, 29 Jan 2018 20:29:27 +0000 (UTC) (envelope-from johannes-maria@t-online.de) Received: from mailout12.t-online.de (mailout12.t-online.de [194.25.134.22]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mailout00.t-online.de", Issuer "TeleSec ServerPass DE-2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0596484B2E for ; Mon, 29 Jan 2018 20:29:26 +0000 (UTC) (envelope-from johannes-maria@t-online.de) Received: from fwd08.aul.t-online.de (fwd08.aul.t-online.de [172.20.26.151]) by mailout12.t-online.de (Postfix) with SMTP id 0332741F630E for ; Mon, 29 Jan 2018 21:21:52 +0100 (CET) Received: from t-online.de (SrHcgvZ-whLE4oLeIJo-Lle8nP7Q8XHC3fClwSrKVOdeTJDdzQznfdbhrXKnH5UwjL@[84.145.225.114]) by fwd08.t-online.de with (TLSv1:DHE-RSA-AES256-SHA encrypted) esmtp id 1egFw2-0kAqAq0; Mon, 29 Jan 2018 21:21:46 +0100 Received: by t-online.de (nbSMTP-1.00) for uid 1001 (using TLSv1/SSLv3 with cipher DHE-RSA-AES256-SHA (256/256 bits)) johannes-maria@t-online.de; Mon, 29 Jan 2018 21:21:46 +0100 (CET) Date: Mon, 29 Jan 2018 21:21:45 +0100 From: Johannes-Maria Kaltenbach To: freebsd-questions@freebsd.org Subject: Re: problem with upgrade and unable to build openjdk8 in poudriere Message-ID: <20180129202145.GA2773@localhost.org> References: <20180115151549.GA9923@localhost.org> <20180128130433.GA2196@localhost.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.3i X-ID: SrHcgvZ-whLE4oLeIJo-Lle8nP7Q8XHC3fClwSrKVOdeTJDdzQznfdbhrXKnH5UwjL X-TOI-MSGID: 3ee15404-8d9a-4ecd-8ee4-7f222c2a80fe X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Jan 2018 20:29:27 -0000 Hello Matthew, thanks for your help and explanations. On Sun, Jan 28, 2018 at 11:59:43PM +0000, Matthew Seaman wrote: > On 28/01/2018 13:04, johannes-maria@t-online.de wrote: > > On Mon, Jan 15, 2018 at 04:15:49PM +0100, johannes-maria@t-online.de wrote: > >> Hello, > >> > >> I'm still working with 9.3 and thought it's time to install 11.1 > >> but there are two problems I couldn't solve myself. > >> > >> I've never worked with jails or poudriere before and probably > >> made some errors so I first describe in detail what I've done. > >> > >> To not destroy my working system I made this on a separate > >> (clear) slice of my hard disk. > >> > >> First I installed the basic 11.1 system with the boot disk > >> (FreeBSD-11.1-RELEASE-amd64-disc1.iso) without problems. > >> > >> Then I installed poudriere (pkg install poudriere) > >> and created a jail with poudriere: > >> poudriere jail -c -v 11.1-RELEASE -a amd64 -j 11amd64 > >> and installed the ports tree: > >> poudriere ports -c > >> I created a list of ports to install and started poudriere: > >> poudriere -v bulk -j 11amd64 -f list_of_ports_to_install > >> > >> > >> First problem: > >> > >> One of the ports to install is x11/kde4 which as a dependency > >> adds java/openjdk8 to the list but poudriere seems to be > >> unable to build it: > >> =>> Failed ports: java/openjdk8:build > >> [excerpt from the log-file: > >> gmake[2]: *** No rule to make target '1'. Stop. > >> gmake[2]: Leaving directory '/wrkdirs/usr/ports/java/openjdk8/work/openjdk/langtools/make' > >> ] > > I can't really give you much help with this: openjdk8 is building just > fine for me on 11.1-RELEASE. This is probably some small configuration > mistake that will have you face-palming once you find it... did you built it in the ports or with poudriere? I have also no problem building it in the ports: a make in java/openjdk8 runs through without an error. But not if it's build with poudriere (and it was the only package with such a problem in poudriere) and as a consequence poudriere could also not build x11/kde4 (in which I'm interested; no interest in java/openjdk8 itself). > >> And therefore > >> =>> Skipped ports: devel/antlr devel/kdesdk4 devel/poxml x11/kde4 > >> > >> On the other hand a direct make in ports/java/openjdk8 is successful > >> but it fails repeatedly when called by poudriere. > >> > >> > >> Second problem: > >> > >> I tried to install the successfully built software > >> (i. e. my list without kde4) with > >> pkg -j 11amd64 upgrade > >> but this fails with > >> pkg: jail "11amd64" not found > >> > >> and jls doesn't list any jails > >> whereas > >> poudriere jail -l > >> displays > >> JAILNAME VERSION ARCH METHOD ... PATH > >> 11amd64 11.1-RELEASE-p6 amd64 ftp ... /usr/local/poudriere/jails/11amd64 > >> > > OK. Confusion over jails here. > > The '-j' flag to pkg(8) allows you to install files into a jail from the > host system. As you don't have any actual jails configured, you don't > want to use this flag. > > These are completely different to the jails used by poudriere. In fact, > when you "create a jail" by eg. > > poudriere jail -c -j 11amd64 -v 11.1-RELEASE -a amd64 -m ftp > > What you are actually doing is creating a template. 'poudriere jail -l' > will list all the templates poudriere knows about. It's only during a > poudriere run that jails are actually created from these templates -- in > fact, as many jails as the degree of parallelism you've allowed in > poudriere.conf. Try running jls(1) while poudriere is compiling stuff > and you'll see. These build jails are only temporary and are destroyed > as soon as the poudriere run ends. thanks for your explanations. Yes, I misunderstood it and as already stated I've no experience or knowledge of jails. > Now, poudriere will collect all the packages it has built into a > repository. It's typical to set up a webserver (nginx recommended) to > allow distribution of those packages, and you will need to write a > configuration file for pkg(8) giving the correct URL for your custom > repository. You'll probably also want to turn off the default FreeBSD > package repository -- see the comment in /etc/pkg/FreeBSD.conf for how > to do that. Then you can just upgrade your system by: > > pkg upgrade > > Hint: try 'pkg -vv' to see your pkg(8) configuration including all the > repositories you have configured. I'm not sure what the correct URL for the poudriere-created repository is, so I looked in /var/poudriere for something plausible and thought it could be /usr/local/poudriere/data/packages/11amd64-default so I set up a /usr/local/etc/pkg/repos/FreeBSD.conf with: FreeBSD: { url: "file:///usr/local/poudriere/data/packages/11amd64-default/", mirror_type: "none", signature_type: "none", enabled: yes } pkg -vv confirmed that ist URL would be used. Then pkg upgrade produced the following output: Updating FreeBSD repository catalogue... FreeBSD repository is up to date. All repositories are up to date. Checking for upgrades (123 candidates): .......... done Processing candidates (123 candidates): . done Checking integrity... done (0 conflicting) Your packages are up to date. At least there was no error but none of the packages which poudriere had built [built 954, 1 failed, 4 skipped] were installed. I don't know how to proceed. Best regards, Johannes-Maria