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

exim-mysql requires ldconfig but doesn't?



I admit it.  I really don't get the FreeBSD packaging system.  Sometimes I'll 
create a package without errors, but the package will be empty.  Other times, 
the package is created and comes with requirements that were never built.

At the moment, I'm dealing with the latter.  I created a package for 
exim-mysql with the following command:

  # portupgrade --package --recursive --new exim-mysql

And it *appears* to work.  However, when I rsync the ports tree to another 
machine (including the newly created package in packages/All/) doing the 
following results in an error:

  # PKG_FETCH=/usr/bin/false; \
    portupgrade --recursive --use-packages-only --new exim-mysql
  --->  Checking for the latest package of 'mail/exim-mysql'
  --->  Found a package of 
        'mail/exim-mysql': /usr/ports/packages/All/exim-mysql-4.60.tbz 
        (exim-mysql-4.60)
  --->  Installing 'exim-mysql-4.60' from a package
  --->  Installing misc/ldconfig_compat as dependency required by 
        exim-mysql-4.60
  --->  Checking for the latest package of 'misc/ldconfig_compat'
  --->  Fetching the package(s) for 
        'ldconfig_compat-1.0_5' (misc/ldconfig_compat)
  --->  Fetching the latest package(s) for 
        'ldconfig_compat' (misc/ldconfig_compat)
  ** Could not find the latest version (1.0_5)
  ** No package available: misc/ldconfig_compat
  --->  Installing the new version via the package
  ** Listing the failed packages (*:skipped / !:failed)
          ! misc/ldconfig_compat  (package not found)
  --->  Packages processed: 1 done, 0 ignored, 0 skipped and 1 failed

Apparently, a dependency is missing.  Something called "ldconfig".  So I try 
to remove it:

  # pkg_deinstall exim-mysql-4.60
  [Updating the pkgdb <format:bdb1_btree> in /var/db/pkg ... - 103 packages 
  found (-0 +1) . done]
  Stale dependency: exim-mysql-4.60 --> ldconfig_compat-1.0_5 -- manually run 
  'pkgdb -F' to fix, or specify -O to force.

Now it's complaining about a stale dependency...  A dependency for a package 
that was just installed.  I remove the dependency with "pkgdb --fix" but that 
doesn't solve the problem because the package was still built wrong.

Reading the contents of /usr/ports/mail/exim/Makefile tells me nothing.  I 
only found out that mysql-server requires this but I'm not sure how to make 
this work properly.

I've built and rebuilt exim-mysql on the main server with no results.  I've 
broken down and installed it manually from ports on the client machine but 
this is not an option.

Please, if someone can rescue me from this insanity, I'd be o-so-greatful.

-- 
do we have to pick sides in the end?
  - ali hossaini, writer
    in reaction to growing racial unrest in the United states since 2001/09/11