recent update causes perl5.10 build failure

Scott Bennett bennett at cs.niu.edu
Sat Aug 1 23:05:55 UTC 2009


     An update yesterday or today results in perl5.10's build aborting.  When
it failed under portmaster, the messages from several processes were too
jumbled for me to see easily what had happened, so I tried portinstall instead.
It ran for a little while, but then got:

     -----------------------------------------------------------------
        Making SDBM_File (dynamic)
Writing Makefile for sdbm
Writing Makefile for SDBM_File
rm -f ../../../lib/auto/PerlIO/via/via.so
cc  -shared  -L/usr/local/lib via.o  -o ../../../lib/auto/PerlIO/via/via.so 

chmod 755 ../../../lib/auto/PerlIO/via/via.so
cc -c  -I../../..  -DAPPLLIB_EXP="/usr/local/lib/perl5/5.10.0/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -I/usr/local/include -O2-fno-strict-aliasing -pipe -march=prescott    -DVERSION=\"\"  -DXS_VERSION=\"\" -DPIC -fPIC "-I../../.."  -DSDBM -DDUFF sdbm.c
cp SDBM_File.pm ../../lib/SDBM_File.pm
c -c  -I../../..  -DAPPLLIB_EXP="/usr/local/lib/perl5/5.10.0/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -I/usr/local/include -O2 -fno-strict-aliasing -pipe -march=prescott    -DVERSION=\"\"  -DXS_VERSION=\"\" -DPIC -fPIC "-I../../.."  -DSDBM -DDUFF pair.c
cd sdbm && make all
cc -c  -I../../..  -DAPPLLIB_EXP="/usr/local/lib/perl5/5.10.0/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -I/usr/local/include -O2 -fno-strict-aliasing -pipe -march=prescott    -DVERSION=\"\"  -DXS_VERSION=\"\" -DPIC -fPIC "-I../../.."  -DSDBM -DDUFF hash.c
cc -c  -I../../..  -DAPPLLIB_EXP="/usr/local/lib/perl5/5.10.0/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -I/usr/local/include -O2 -fno-strict-aliasing -pipe -march=prescott    -DVERSION=\"\"  -DXS_VERSION=\"\" -DPIC -fPIC "-I../../.."  -DSDBM -DDUFF hash.c
rm -rf libsdbm.a
/usr/bin/ar cr libsdbm.a sdbm.o  pair.o  hash.o && : libsdbm.a
chmod 755 libsdbm.a
rm -rf libsdbm.a
/usr/bin/ar cr libsdbm.a sdbm.o  pair.o  hash.o && : libsdbm.a
chmod: libsdbm.a: No such file or directory
*** Error code 1
1 error
*** Error code 2
chmod 755 libsdbm.a
        Making Socket (dynamic)
1 error
*** Error code 2
Writing Makefile for Socket
../../miniperl "-I../../lib" "-I../../lib" ../../lib/ExtUtils/xsubpp -noprototypes -typemap ../../lib/ExtUtils/typemap  Socket.xs > Socket.xsc && mv Socket.xsc Socket.c
cp Socket.pm ../../lib/Socket.pm
Running Mkbootstrap for Socket ()
cc -c    -DAPPLLIB_EXP="/usr/local/lib/perl5/5.10.0/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -I/usr/local/include -O2 -fno-strict-aliasing -pipe -march=prescott    -DVERSION=\"1.80\"  -DXS_VERSION=\"1.80\" -DPIC -fPIC "-I../.."   Socket.c
chmod 644 Socket.bs
cp Socket.bs ../../lib/auto/Socket/Socket.bs
chmod 644 ../../lib/auto/Socket/Socket.bs
rm -f ../../lib/auto/Socket/Socket.so
cc  -shared  -L/usr/local/lib Socket.o  -o ../../lib/auto/Socket/Socket.so

chmod 755 ../../lib/auto/Socket/Socket.so
1 error
*** Error code 1

Stop in /usr/ports/lang/perl5.10.
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portinstall20090801-98688-18zfu5z-0 env make
** Fix the problem and try again.
--->  Build of lang/perl5.10 ended at: Sat, 01 Aug 2009 16:42:13 -0500 (consumed 00:03:49)
--->  Fresh installation of lang/perl5.10 ended at: Sat, 01 Aug 2009 16:42:13 -0500 (consumed 00:03:51)
--->  ** Install tasks 1: 0 done, 0 ignored, 0 skipped and 1 failed
--->  Listing the results (+:done / -:ignored / *:skipped / !:failed)
        ! lang/perl5.10 (unknown build error)
--->  Packages processed: 0 done, 0 ignored, 0 skipped and 1 failed
--->  Session ended at: Sat, 01 Aug 2009 16:42:39 -0500 (consumed 00:04:54)

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

     At least on a first look, it seems that perl5.10 has "MAKE_JOBS_SAFE= yes"
in its Makefile, but that it should not.  I changed that to
"MAKE_JOBS_SAFE= no" and ran portinstall to build it (again).  However, the
initial failure occurred during a "portmaster -w -v -a" (actually,
"portmaster -w -v -R -a") run, so something else got built that wanted perl
before the whole thing quit, which meant that perl5.8 got built *in spite of
the +IGNOREME files* in the appropriate /var/db/pkg directories (i.e., for
threaded and non-threaded configurations).  The +IGNOREME file method has been
working for me until now, but in this special situation, it apparently ignores
the +IGNOREME rather than the port. :-(  So the portinstall failed at the
end, but with a suggestion to set the FORCE_PKG_REGISTER environment variable.
I did that and then reran the portinstall, which worked.
     Anyway, both portmaster and the perl5.10.0_4 port need to be fixed.
portmaster should *not* have built perl5.8 when there were +IGNOREME files for
it, and perl5.10 is *not* MAKE_JOBS_SAFE.


                                  Scott Bennett, Comm. ASMELG, CFIAG
**********************************************************************
* Internet:       bennett at cs.niu.edu                              *
*--------------------------------------------------------------------*
* "A well regulated and disciplined militia, is at all times a good  *
* objection to the introduction of that bane of all free governments *
* -- a standing army."                                               *
*    -- Gov. John Hancock, New York Journal, 28 January 1790         *
**********************************************************************


More information about the freebsd-ports mailing list