From owner-freebsd-chat Wed May 9 17:21: 5 2001 Delivered-To: freebsd-chat@freebsd.org Received: from smtp04.primenet.com (smtp04.primenet.com [206.165.6.134]) by hub.freebsd.org (Postfix) with ESMTP id 7F1E737B424; Wed, 9 May 2001 17:20:55 -0700 (PDT) (envelope-from tlambert@usr06.primenet.com) Received: (from daemon@localhost) by smtp04.primenet.com (8.9.3/8.9.3) id RAA04110; Wed, 9 May 2001 17:20:53 -0700 (MST) Received: from usr06.primenet.com(206.165.6.206) via SMTP by smtp04.primenet.com, id smtpdAAAMyaa5h; Wed May 9 17:20:39 2001 Received: (from tlambert@localhost) by usr06.primenet.com (8.8.5/8.8.5) id RAA04754; Wed, 9 May 2001 17:26:05 -0700 (MST) From: Terry Lambert Message-Id: <200105100026.RAA04754@usr06.primenet.com> Subject: Re: question/rant: upgrade kit for 3.x ports?! To: dannyman@toldme.com (dannyman) Date: Thu, 10 May 2001 00:24:44 +0000 (GMT) Cc: jmallett@newgold.net (Joseph Mallett), freebsd-questions@FreeBSD.ORG, freebsd-chat@FreeBSD.ORG In-Reply-To: <20010509140838.C17000@dell.dannyland.org> from "dannyman" at May 09, 2001 02:08:38 PM X-Mailer: ELM [version 2.5 PL2] MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-chat@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > > Make a package from the port, and install it on the boxes that can't > > build. What's the problem with doing it that way? > > All my boxes should be able to build. > > This way, I get to make the package, oh wait, every sub-package dependancy, > on ONE 3.5-RELEASE box, and then go back and install the packages on my OTHER > 3.5 box, when I should be able to "upgrade" the other 3.5 box to make its own > darned port installs in the first place, as it works on the other 3.5 boxes > that I installed the "upgrade" package on before it was revoked from > www.freebsd.org/ports/ > > 0-13:43 dannyman@you /usr/ports/mail/postfix> sudo make install > Password: > ===> postfix-20010228.1 : Your system is too old to use this bsd.port.mk. You > need a fresh make world or an upgrade kit. Please go to > http://www.FreeBSD.org/ports/ or a mirror site and follow the instructions. > > I go to http://www.FreeBSD.org/ports/ and I'm told that 3.x is no longer > supported. Okay, that's fine with me, but where's the upgrade package that > worked to fix my other 3.5-RELEASE boxen? :< ------------- SHORT ANSWER ------------- You have shot yourself in the foot, and you need to _manually_ downgrade, and pray you can find the older distribution files which the /usr/ports which matches your OS version _somewhere_, or you must _resign yourself to upgrading_. ------------- LONG ANSWER ------------- What it is saying is that the /usr/ports you installed is newer than the version of the operating system you have installed. You can not do this. The reason you can not do this is that the ports .mk files, which are in /usr/ports/Mk/, _MUST_ match your system .mk files, which are in /usr/share/mk. If you were to look at /usr/ports/Mk/bsd.port.mk in "vi", and use the command "/^IGNORE=", you will see the exact line which prohibits your make from working. You could replace you /usr/share/mk files... _IF_ you were willing to never be able to build another kernel or anything else in /usr/src on that system! What you _need_ to do is reinstall a matching version of /usr/ports on your system, _OR_ to _fully upgrade_ your system to a newer (supported) version, so that /usr/ports/Mk and /usr/share/mk will _once again match, like they used to when you first installed_. The easiest way to fix your system would probably be to (on the broken system): cd /usr rm -rf ports Then go to a system _of the same version_ where the build _works_, and: cd /tmp tar czf ports.tar.gz /usr/ports FTP this new file over to the broken system (e.g. in /tmp), and then do (again on the broken system): cd / tar xzf /tmp/ports.tar.gz NOTE: One _very_ common reason that _old_ machines have ports which work on _one_ of them, but _not_ on another, is that the ports system _caches_ distribution files, and the _broken_ machine doesn't have a cached copy of the distribution file, but the _working_ machine does. If you follow the process outlined above, it will _also_ copy the cached copy of the distribution file, and things will work on the _broken_ machine as well, after you have unpacked the /usr/ports from the _working_ machine. NOTE!: The main reason that ports are not supported on older machines is that the people who created the software have moved onto newer versions, but there is no ports maintainer among the FreeBSD ports maintainers for the older versions of FreeBSD, so there is _no_ "new" /usr/ports for that version of FreeBSD which references the _newer_ distribution files, which the authors of those files have changed out from under the FreeBSD ports system (usually by releasing a new version of their software, and deleting the old version from their FTP site, instead of archiving it for all eternity, so that people who refuse to upgrade their OS will not suffer). NOTE!!: There is _no way in hell_ you can use a newer /usr/ports on an older machine. Ever. Forget about trying. The message you got when you tried should probably have been _MUCH_ more strongly worded! You will _BREAK_ your ability to use /usr/ports _at all_ if you unpack a new version of a mismatched /usr/ports onto an old system. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-chat" in the body of the message