Please help with this conundrum!

Eric Dynamic ecsd at transbay.net
Sun Jan 18 12:39:42 UTC 2015


Vanilla fresh install of FreeBSD 10.1. From my old habits I downloaded 
the current ports tarball,
unpacked it to be /usr/ports, and installed numerous things with it 
without a problem, including
php56. However, in trying to connect PHP with apache, after installing 
www/mod_php56, httpd
crashes and I wonder if I forgot ZTS. I want to start over and make sure 
ZTS threads are there.

I look on the FreeBSD site for anything relating to the php56 port and 
all there is is the skeletal
information, nothing about the choices one faces. Fine; I'll just 
blindly start over. But just to be safe:

I know the ports system is altered from the old days, so I go to the 
online doc to see this:

    Procedure 5.1. Portsnap Method

    The base system of FreeBSD includes Portsnap. This is a fast and
    user-friendly tool for retrieving the Ports Collection and is the
    recommended choice for most users. This utility connects to a
    FreeBSD site, verifies the secure key, and downloads a new copy of
    the Ports Collection. The key is used to verify the integrity of all
    downloaded files.

     1.

        To download a compressed snapshot of the Ports Collection into
        |/var/db/portsnap|:

        |#|  *|portsnap fetch|*

     2.

        When running Portsnap for the first time, extract the snapshot
        into |/usr/ports|:

        |#|  *|portsnap extract|*

     3.

        After the first use of Portsnap has been completed as shown
        above, |/usr/ports| can be updated as needed by running:

        |#|  *|portsnap fetch|*
        |#|  *|portsnap update|*

        When using |fetch|, the |extract| or the |update| operation may
        be run consecutively, like so:

        |#|  *|portsnap fetch update|*

After running portsnap as directed by the web page, try to compile 
lang/php56 and am told

# make
===>  License PHP301 accepted by the user
===>  Found saved configuration for php56-5.6.4
===>   php56-5.6.4 depends on file: /usr/local/sbin/pkg - not found
===>    Verifying install for /usr/local/sbin/pkg in 
/usr/ports/ports-mgmt/pkg
You are about to convert your system to pkg while you have ports/packages
installed with the old pkg_install tools.

To switch to pkg:
     1) Install ports-mgmt/pkg
        cd ports-mgmt/pkg && make UPGRADEPKG=1 install clean
     2) Convert your package database by running pkg2ng

*** [pre-everything] Error code 1

Stop in /usr/ports/ports-mgmt/pkg.
*** [pkg-depends] Error code 1

Stop in /usr/ports/lang/php56.
*** [stage] Error code 1

Stop in /usr/ports/lang/php56.

I would think in FreeBSD 10.1 that the ports system should be internally 
self-consistent and already upgraded to the new regime;
so if "pkg" was not available already it would just be compiled and 
installation would proceed, although if "pkg" is so central,
perhaps a version of it should be part of the base system. No matter (I 
suppose), I do what the instructions say, and here's what
happens:

# pwd
/usr/ports/ports-mgmt/pkg

# make UPGRADEPKG=1 install clean

*/usr/lib/libssl.a(s2_lib.o): In function `ssl2_get_cipher_by_char':**
**s2_lib.c:(.text+0x41e): undefined reference to `OBJ_bsearch'**
**/usr/lib/libssl.a(s3_lib.o): In function `ssl3_get_cipher_by_char':**
**s3_lib.c:(.text+0x6b4): undefined reference to `OBJ_bsearch'**
***** [pkg-static] Error code 1*

Stop in /usr/ports/ports-mgmt/pkg/work/pkg-1.4.6/src.
*** [all-recursive] Error code 1

Stop in /usr/ports/ports-mgmt/pkg/work/pkg-1.4.6.
*** [all] Error code 1

Stop in /usr/ports/ports-mgmt/pkg/work/pkg-1.4.6.
*** [do-build] Error code 1

Stop in /usr/ports/ports-mgmt/pkg.
*** [/usr/ports/ports-mgmt/pkg/work/.build_done.pkg._usr_local] Error code 1

Stop in /usr/ports/ports-mgmt/pkg.

So "pkg" itself won't compile, and so the ports are totally hosed.
What gives?
What can I do to fix this?
Can the online documentation be upgraded to be consistent with the 
actual procedures required, if what the documentation says is not correct?

Also, I notice that the system's "pkg" command that _had been_ working 
for the original ports I compiled, seems to have been wiped out by
some aspect of the portsnap process, apparently. Had it simply been left 
alone, I think much of the above could have been avoided.


More information about the freebsd-questions mailing list