problem with upgrade and unable to build openjdk8 in poudriere
johannes-maria at t-online.de
Mon Jan 29 20:29:27 UTC 2018
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 at t-online.de wrote:
> > On Mon, Jan 15, 2018 at 04:15:49PM +0100, johannes-maria at 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: *** No rule to make target '1'. Stop.
> >> gmake: 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
so I set up a /usr/local/etc/pkg/repos/FreeBSD.conf with:
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]
I don't know how to proceed.
More information about the freebsd-questions