tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pbulk with manual steps



> I've found pbulk to be problematic on slower architectures and
> platforms with limited memory.

No kidding!

> In the past, I've used a fast machine with lots of memory to
> build the presolve and pscan files, then moved them to slower
> machines, then run bulkbuild-rebuild on each package in
> turn. This worked. However, now I can't even get past the
> initial dependencies (distcc, ccache) on two architectures.
> I've built checkperms, digest, libtool-base and gmake, but any
> attempt to compile popt gives me the dreaded:
>
> ===> Installing dependencies for popt-1.16nb1
> => Tool dependency libtool-base>=2.2.6bnb3: NOT found
> => Verifying /nonexistent for ../../devel/libtool-base
> make: don't know how to make /nonexistent. Stop

I've recently had a similar problem trying to wind up the build for
pkgsrc-2015Q4.  This /nonexistent comes (in my case) from the
/usr/pbulk/libexec/pbulk/pkg-build script, which has

              DEPENDS_TARGET=/nonexistent \

In my case the above was a symptom that the pkg_add etc. settings in
my pbulk.conf pointed to the pkg_add in my /usr/pbulk/sbin/
directory, and this version of pkg_install defaults to prefix
/usr/pbulk and pkg DB directory /usr/pbulk/var/db/pkg.  Thus, when
the "depends" phase of the build for a package is run, and the
packages it needs are supposed to be installed, the packages are
installed in /usr/pbulk and not in /usr/pkg, typically causing the
build of the package to fail.  You may see traces of this in your
bulklog/<package>/depends.log files, e.g. if info files are
installed it'll tell you in the log which directory it's updating.

The fix in my case was to reconfigure pbulk.conf to use the native
pkg_install, i.e. the one in /usr/sbin.  pbulk.conf has a comment
that it must use a pkg_install installed outside of /usr/pkg.

My earlier setup was in use to build pkgsrc-2015Q3, so I'm pretty
sure the previous pkg_install binaries installed in /usr/pbulk used
/var/db/pkg and installed packages in /usr/pkg by default, while the
new one doesn't.

Regards,

- Håvard


Home | Main Index | Thread Index | Old Index