On Sat, Nov 15, 2008 at 5:07 AM, Stuart Henderson <[EMAIL PROTECTED]> wrote:
> On 2008/11/15 10:05, Stuart Henderson wrote:
>> On 2008/11/14 22:58, Jason Beaudoin wrote:
>> > I've bulk built a number of packages over the last week, and I often
>> > run into the situation where building a package requires a dependency
>> > (that ends up either being built or found on a mirror), but when make
>> > tries to pkg_add the dependency, pkg_add fails saying it can't find
>> > the target package.
>>
>> I think you need to figure out what you're doing that's different
>> to everyone else.

that's what I'm trying for :)

here is some more info and context.. first of all, this is occuring in
the middle of a bulk package build running the command:

  cd /usr/ports;
  make BULK=yes REFETCH=true REPORT_PROBLEMS=true
SUBDIRLIST=/root/pkg_list.txt package;

and here is my mk.conf:

  (chroot) # cat /etc/mk.conf
  ACCEPT_JRL_LICENSE=Yes          # to build jdk for openoffice
  FETCH_PACKAGES=yes

  # keeping the tree clean..
  WRKOBJDIR=/usr/obj/ports/

>>
>> Is your ports tree clean and up-to-date?

after my initial message to the list, I wiped the ports tree,
retested, then wiped the entire chroot last night. Continuing this
morning, I hit the same fatal error with the jpeg package.

I have done some more testing and confirmed a few more odditites about
this, maybe someone can shed some light where I have gone astray.

>>
>> > Can't find /usr/ports/packages/i386/all/glib2-2.18.2.tgz
>>
>> No wonder this fails, the package is called glib-2.18.2.tgz...

to clarify, this particular error came from the bulk build, when it
tried to pkg_add glib2 itself.. this isn't me.

----------------------------------

the problem seems to surface with packages that exist on mirrors, and
don't need to  be built locally, the following example shows this
(clean chroot and ports tree - it just happens to be glib2 again):

  ===> Returning to build of glib2-2.18.2
  ===>  glib2-2.18.2 depends on: pcre->=7.2 - found
  ===>  glib2-2.18.2 depends on: gettext->=0.17 - found
  ===>  glib2-2.18.2 depends on: gmake-* - found
  ===>  glib2-2.18.2 depends on: libtool-* - found
  ===>  glib2-2.18.2 depends on: bzip2-* - found
  ===>  Verifying specs: intl.>=4 iconv.>=4 pcre c
  ===>  found intl.4.0 iconv.5.0 pcre.2.2 c.49.0
  ===>  Installing glib2-2.18.2 from /usr/ports/packages/i386/all/
  Can't find /usr/ports/packages/i386/all/glib2-2.18.2.tgz
  /usr/sbin/pkg_add: /usr/ports/packages/i386/all/glib2-2.18.2.tgz:Fatal error
  *** Error code 1

  Stop in /usr/ports/devel/glib2 (line 1452 of
/usr/ports/infrastructure/mk/bsd.port.mk).
  *** Error code 1

<interjection>
so "pkg_add /usr/ports/packages/i386/all/glib2-2.18.2.tgz" attempted
to install glib2  during the bulk build, though pkg_add failed.
</interjection>


  Stop in /usr/ports/devel/libIDL (line 1601 of
/usr/ports/infrastructure/mk/bsd.port.mk).
  *** Error code 1

<snip redundant error>

  Stop in /usr/ports/devel/ORBit2 (line 1964 of
/usr/ports/infrastructure/mk/bsd.port.mk).
  ===> Exiting devel/ORBit2 with an error
  *** Error code 1
  Stop in /usr/ports (line 124 of
/usr/ports/infrastructure/mk/bsd.port.subdir.mk).

-------------
ok, so let us attempt the pkg_add ourselves:

  (chroot) # pkg_add /usr/ports/packages/i386/all/glib2-2.18.2.tgz
  Can't find /usr/ports/packages/i386/all/glib2-2.18.2.tgz
  /usr/sbin/pkg_add: /usr/ports/packages/i386/all/glib2-2.18.2.tgz:Fatal error

-------------
let's try another package that is in the $PKG_PATH:

  (chroot) # pkg_add /usr/ports/packages/i386/all/python-2.5.2p7.tgz
  Can't find /usr/ports/packages/i386/all/python-2.5.2p7.tgz
  /usr/sbin/pkg_add: /usr/ports/packages/i386/all/python-2.5.2p7.tgz:Fatal error

------------
ok, let's try the package name, not full path:

  (chroot) # pkg_add glib2
  Error from 
ftp://ftp3.usa.openbsd.org//pub/OpenBSD/snapshots/i386/glib2-2.18.2.tgz:
  550 glib2-2.18.2.tgz: No such file or directory.
  glib2-2.18.2: complete

-------------
so it appears that glib2-2.18.2.tgz from the local repository was not
used, but rather my third PKG_PATH location:

export 
PKG_PATH="/usr/ports/packages/i386/all/:ftp://ftp3.usa.openbsd.org/pub/OpenBSD/snapshots/i386/:ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/packages/i386/";

let's verify this by changing the PKG_PATH to include only the local
repository, even though glib2 was already installed, pkg_add needs to
find the package first:

  (chroot) # export PKG_PATH="/usr/ports/packages/i386/all/"
  (chroot) # pkg_add glib2
  Can't find glib2-2.18.2
  /usr/sbin/pkg_add: glib2-2.18.2:Fatal error

-------------
so now that glib2 has been installed, and we seem to have a problem
with using packages copied to the local repository from ftp (but ftp
pkg_add's fine), I continue with the bulk build.. we will see if
things break again:

  ===> Returning to build of enchant-1.4.0p1
  ===>  enchant-1.4.0p1 depends on: aspell-* - found
  ===>  enchant-1.4.0p1 depends on: dbus-glib-* - not found
  ===>  Verifying install for dbus-glib-* in x11/dbus-glib
  ===>  dbus-glib-0.76 depends on: gettext->=0.10.38 - found
  ===>  dbus-glib-0.76 depends on: dbus-* - not found
  ===>  Verifying install for dbus-* in x11/dbus
  ===>  dbus-1.2.4 depends on: metaauto-* - found
  ===>  dbus-1.2.4 depends on: autoconf-2.61 - found
  ===>  dbus-1.2.4 depends on: libtool-* - found
  ===>  Verifying specs:  ICE X11 Xau Xdmcp SM c expat pthread
  ===>  found ICE.8.1 X11.11.1 Xau.9.0 Xdmcp.9.0 SM.8.0 c.49.0
expat.9.0 pthread.11.0
  ===>  Installing dbus-1.2.4 from /usr/ports/packages/i386/all/
  Can't find /usr/ports/packages/i386/all/dbus-1.2.4.tgz
  /usr/sbin/pkg_add: /usr/ports/packages/i386/all/dbus-1.2.4.tgz:Fatal error
  *** Error code 1

  Stop in /usr/ports/x11/dbus (line 1452 of
/usr/ports/infrastructure/mk/bsd.port.mk).
  *** Error code 1

<snip>

  Stop in /usr/ports/textproc/enchant (line 1964 of
/usr/ports/infrastructure/mk/bsd.port.mk).
  ===> Exiting textproc/enchant with an error
  *** Error code 1

  Stop in /usr/ports (line 124 of
/usr/ports/infrastructure/mk/bsd.port.subdir.mk).

-------------
so now dbus.. PKG_PATH is still local, do any pkg_add's work, aside
from using the ftp location:

  (chroot) # echo $PKG_PATH
  /usr/ports/packages/i386/all/

  (chroot) # pkg_add -ni dbus
  Can't find dbus-1.2.4
  /usr/sbin/pkg_add: dbus-1.2.4:Fatal error

  (chroot) # pkg_add -ni /usr/ports/packages/i386/all/dbus-1.2.4.tgz
  Can't find /usr/ports/packages/i386/all/dbus-1.2.4.tgz
  /usr/sbin/pkg_add: /usr/ports/packages/i386/all/dbus-1.2.4.tgz:Fatal error

-------------
let's try exiting and re-entering the chroot (although it is worth
mentioning I ran into this same situation last week, not in chroot):

  (chroot) # exit
  # chroot /mnt/rover/ /bin/ksh -l
  Terminal type? [nxterm]

note: PKG_PATH has now been reset (local,ftp3,ftp)

-------------
let's try that dbus package again:
  (chroot) # pkg_add -ni /usr/ports/packages/i386/all/dbus-1.2.4.tgz
  Can't find /usr/ports/packages/i386/all/dbus-1.2.4.tgz
  /usr/sbin/pkg_add: /usr/ports/packages/i386/all/dbus-1.2.4.tgz:Fatal error

-------------
what about from the mirrors:

  (chroot) # pkg_add -ni dbus
  Error from 
ftp://ftp3.usa.openbsd.org//pub/OpenBSD/snapshots/i386/dbus-1.2.4.tgz:
  550 dbus-1.2.4.tgz: No such file or directory.
  Pretending to add dbus-1.2.4
  The file /etc/dbus-1/session.conf would be installed from
/usr/local/share/examples/dbus/dbus-1/session.conf
  The file /etc/dbus-1/system.conf would be installed from
/usr/local/share/examples/dbus/dbus-1/system.conf
  exec /usr/local/bin/dbus-uuidgen --ensure
  /dev/wd0i: 1513480 bytes
  --- dbus-1.2.4 -------------------
  To start systemwide message dbus daemon whenever the machine boots,
  add the following lines to /etc/rc.local:

  if [ -x /usr/local/bin/dbus-daemon ]; then
          install -d -o _dbus -g _dbus /var/run/dbus
          echo -n ' dbus'; /usr/local/bin/dbus-daemon --system
  fi

yep.. works with the ftp package

-------------
let's install dbus and move on:

  (chroot) # pkg_add dbus
  Error from 
ftp://ftp3.usa.openbsd.org//pub/OpenBSD/snapshots/i386/dbus-1.2.4.tgz:
  550 dbus-1.2.4.tgz: No such file or directory.
  dbus-1.2.4: complete
  --- dbus-1.2.4 -------------------

<snip>

-------------
alright.. let's retry the bulk build.. it continues past dbus, but
dies again at dbus-glib. after installing dbus-glib from the ftp
package.. the bulk build continues.

the example I've included here is from my work yesterday (with a clean
ports tree, but the same chroot). As mentioned before, I created a
clean chroot and ports tree last night, which I have since tested the
bulk build on, running into the same issue. I started a bulk build on
my laptop (with a clean -current ports tree) this morning. It hasn't
crapped out yet, but we'll see what happens.

what is going wrong here, or where am I going wrong?
I can post my full prep/chroot/bulk-build process, if that is of
interest please let me know.


thanks for the time!
~Jason

Reply via email to