Hi ports@, pkg + sqlite was causing trouble with my 11-current src/ & ports/, The problem is still there in generic FreeBSD & needs fixing I believe, though I managed to dig my way out here marked at ============
I had a perl mess, & could neither delete old or install new perl ! I wanted to either or both: - Forcibly remove just old perl &/or - Forcibly install new perl, as perl was breaking numerous other port builds here. I recall FreeBSD used to be able to forcibly make install & deinstall & package delete just One port not All. It seems no longer so ? A regression of functionality ! (BTW I never have or will install packages from off site. All ports on this machine are built localy on this machine by me, None from packages, so pkg nstall has not corrupted the machine, But letting pkg infest parts of ports build seems to have degraded ports build, burdening ports install with pkg checks seems to have has brought pain & no benefit here.) Earlier Solutions that occured to me: - Allow pkg delete to remove the 170 dependent packages, then put them all back again with cd /usr/ports; make BERKLIX_CLIENT=YES package-recursive - rm /var/db/pkg/local.sqlite & reinstall from ports/ as above - Maybe edit /var/db/pkg/local.sqlite Somehow to tell it perl is missing. I had no idea how to do that. Man pkg does not say. - Explored ports/Mk/bsd.port.mk (cos its not documented in man pkg delete) ... didnt help. Finally I found a cludge solution to fix the broken sqlite, further below at last ============ But it seems FreeBSD mechanism is still broken & needs fixing. Transcript snippets below are only partly in chronological order, but after last ============ all in in chronological order): ------ cd /usr/ports/textproc/p5-XML-Parser; make install ===> Installing for p5-XML-Parser-2.41_2 ===> p5-XML-Parser-2.41_2 depends on file: /usr/local/bin/perl5.16.3 - found ===> p5-XML-Parser-2.41_2 depends on shared library: libexpat.so - found (/usr/local/lib/libexpat.so.6.0.0) ===> Registering installation for p5-XML-Parser-2.41_2 pkg-static: Unable to access file /data/release/11.0-CURRENT/usr/ports/textproc/p5-XML-Parser/work/stage/usr/local/lib/perl5/site_perl/mach/5.16/auto/XML/Parser/Expat/Expat.so: No such file or directory pkg-static: Unable to access file /data/release/11.0-CURRENT/usr/ports/textproc/p5-XML-Parser/work/stage/usr/local/lib/perl5/site_perl/mach/5.16/XML/Parser/Encodings/Japanese_Encodings.msg: No such file or directory ------ /etc/make.conf MAKE_JOBS_UNSAFE=yes # MAKE_JOBS_UNSAFE=yes for /usr1/release/10.0-ALPHA4/ports/graphics/libGL ..... no PERL directives ------ which perl /usr/bin/perl ------ perl -v This is perl 5, version 16, subversion 3 (v5.16.3) built for amd64-freebsd-thread-multi ------ cd /usr/ports/lang/perl5.16;make deinstall ===> Deinstalling for perl5.16 ===> perl5.16 not installed, skipping ------ cd /usr/ports/lang/perl5.16;make install ===> Installing for perl5.16-5.16.3_18 ===> Registering installation for perl5.16-5.16.3_18 Installing perl5.16-5.16.3_18... pkg-static: perl5.16-5.16.3_18 conflicts with perl5-5.16.3_11 (installs files into the same place). Problematic file: /usr/local/bin/a2p ------ cd /usr/ports/lang/perl5.16 ;make DISABLE_CONFLICTS=YES install ===> Installing for perl5.16-5.16.3_18 ===> Registering installation for perl5.16-5.16.3_18 Installing perl5.16-5.16.3_18... pkg-static: perl5.16-5.16.3_18 conflicts with perl5-5.16.3_11 (installs files into the same place). Problematic file: /usr/local/bin/a2p *** Error code 70 ------ ls -l /usr/local/bin/a2p ... Nothing Cos I previously deleted it hoping to trick my way out of this obstructive breaking check. ------ cd /usr/ports/lang/perl5.16;make deinstall ===> Deinstalling for perl5.16 ===> perl5.16 not installed, skipping ------ pkg info | grep perl p5-Storable-2.45 Persistency for perl data structures perl5-5.16.3_11 Practical Extraction and Report Language ------ pkg delete perl5-5.16.3_11 ... The operation will free 2 GB. Proceed with deinstalling packages? [y/N]: N ------ pkg -d delete perl5-5.16.3_11 Checking integrity... done (0 conflicting) Deinstallation has been requested for the following 176 packages (of 0 packages in the universe): Installed packages to be REMOVED: ... big list The operation will free 2 GB. Proceed with deinstalling packages? [y/N]: N ------ man pkg Fails to specify how to JUST delete one package forciby ------ l /*bin/pkg /usr/*bin/pkg /usr/local/*bin/pkg -rwxr-xr-x 1 root wheel 171272 Dec 22 16:08 /usr/local/sbin/pkg* -r-xr-xr-x 1 root wheel 29512 Dec 22 01:37 /usr/sbin/pkg* ------ set | grep path path (/sbin /bin /usr/sbin /usr/bin /usr/local/sbin /usr/local/bin) ------ /usr/local/sbin/pkg delete perl5-5.16.3_11 The operation will free 2 GB. Proceed with deinstalling packages? [y/N]: N ------ pkg info| wc -l 755 ------ pkg -N pkg: 755 packages installed ------ I tried patching out /usr/ports/lang/perl5.16/ *** Makefile.orig Wed Dec 24 02:15:45 2014 --- Makefile Wed Dec 24 02:16:30 2014 *************** *** 20,26 **** DEPRECATED= Unsupported, please upgrade to a more recent version of Perl EXPIRATION_DATE=2015-07-31 ! CONFLICTS_INSTALL= perl5.*-* OPTIONS_DEFINE= DEBUG GDBM PERL_MALLOC PERL_64BITINT THREADS PTHREAD \ MULTIPLICITY SITECUSTOMIZE USE_PERL --- 20,26 ---- DEPRECATED= Unsupported, please upgrade to a more recent version of Perl EXPIRATION_DATE=2015-07-31 ! ## CONFLICTS_INSTALL= perl5.*-* OPTIONS_DEFINE= DEBUG GDBM PERL_MALLOC PERL_64BITINT THREADS PTHREAD \ MULTIPLICITY SITECUSTOMIZE USE_PERL *************** *** 99,105 **** # make PKGNAME unique among other lang/perl5.x PKGNAMESUFFIX= ${PERL_VER} # always add default perl5 pkgname to conflicts ! CONFLICTS_INSTALL+= perl5-* .endif .if defined(PERL_VENDOR_PREFIX) --- 99,105 ---- # make PKGNAME unique among other lang/perl5.x PKGNAMESUFFIX= ${PERL_VER} # always add default perl5 pkgname to conflicts ! ## CONFLICTS_INSTALL+= perl5-* .endif .if defined(PERL_VENDOR_PREFIX) _____________ make install ===> Installing for perl5.16-5.16.3_18 ===> Registering installation for perl5.16-5.16.3_18 Installing perl5.16-5.16.3_18... pkg-static: perl5.16-5.16.3_18 conflicts with perl5-5.16.3_11 (installs files into the same place). Problematic file: /usr/local/bin/a2p ------ Adding this didnt help check-conflicts: true ------ ============ In Chronlogical order below: cd ../perl5.18 ; make install Installing perl5-5.18.4_11... ... OK !! ------ pkg info | grep perl p5-Storable-2.45 Persistency for perl data structures perl5-5.18.4_11 Practical Extraction and Report Language ------ cd /usr/ports/lang/perl5.16 make install Installing perl5.16-5.16.3_18... pkg-static: perl5.16-5.16.3_18 conflicts with perl5-5.18.4_11 (installs files into the same place). Problematic file: /usr/local/bin/a2p ------ cd perl5.18 ; make install;make deinstall ------ cd ../perl5.16; make install OK ------ pkg info | grep perl p5-Storable-2.45 Persistency for perl data structures perl5.16-5.16.3_18 Practical Extraction and Report Language ------ cd /usr/ports/lang/perl5.16; make deinstall OK ------ cd /usr/ports/lang/perl5.16; make install OK ------ cd /usr/ports/textproc/p5-XML-Parser ; make clean ; make install OK ------ Cheers, Julian -- Julian Stacey, BSD Linux Unix'78 C Sys Eng Consultant Munich http://berklix.com Indent previous with "> ". Interleave reply paragraphs like a play script. Send plain text, not quoted-printable, HTML, base64, or multipart/alternative. _______________________________________________ freebsd-ports@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"