From owner-freebsd-questions@FreeBSD.ORG Thu May 21 11:26:29 2015 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EBEE549F for ; Thu, 21 May 2015 11:26:28 +0000 (UTC) Received: from mx02.qsc.de (mx02.qsc.de [213.148.130.14]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 856321D43 for ; Thu, 21 May 2015 11:26:27 +0000 (UTC) Received: from r56.edvax.de (port-92-195-181-19.dynamic.qsc.de [92.195.181.19]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx02.qsc.de (Postfix) with ESMTPS id D441527858; Thu, 21 May 2015 13:26:24 +0200 (CEST) Received: from r56.edvax.de (localhost [127.0.0.1]) by r56.edvax.de (8.14.5/8.14.5) with SMTP id t4LBQOKA002054; Thu, 21 May 2015 13:26:24 +0200 (CEST) (envelope-from freebsd@edvax.de) Date: Thu, 21 May 2015 13:26:23 +0200 From: Polytropon To: Jeffry Killen Cc: freebsd-questions@freebsd.org Subject: Re: ports make search? Message-Id: <20150521132623.6bb2ca8e.freebsd@edvax.de> In-Reply-To: <42273F5C-2759-4B43-B687-A6CEAAD08594@prodigy.net> References: <29A62BC7-F140-4BA4-B7DF-1B5F47E27889@prodigy.net> <20150521021030.4a0485ab.freebsd@edvax.de> <42273F5C-2759-4B43-B687-A6CEAAD08594@prodigy.net> Reply-To: Polytropon Organization: EDVAX X-Mailer: Sylpheed 3.1.1 (GTK+ 2.24.5; i386-portbld-freebsd8.2) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 May 2015 11:26:29 -0000 On Wed, 20 May 2015 18:46:47 -0700, Jeffry Killen wrote: > > On May 20, 2015, at 5:10 PM, Polytropon wrote: > > > On Wed, 20 May 2015 16:18:26 -0700, Jeffry Killen wrote: > >> I am in /usr/ports and > >> did make search name='libjpg' > >> It says that INDEX_10 must be built > >> > >> So now I have excuted the command > >> make index > >> > >> As I type this it appears that the process is completed. > >> > >> But it has been going on for around 20 minutes. Is it > >> common or not unexpected to take that long? > > > > If I remember correctly, the index file can be fetched and > > doesn't need to be built locally (which really takes some > > time, as you have noticed): > > > > # make fetchindex > > > > When the index is present, things like "make search" will > > work properly. > > Thanks; > I notice that in man ports but I am wondering if the fetch version > would be up to date with what I have? The INDEX file should match the snapshot of the ports tree which you downloaded using portsnap, if I have understood the mechanism correctly. For updates using SVN this _might_ not be the case, but a mismatch would be reported anyway, so it's easy to try out. > To overload this thread: > I wanted to build php56 and let it fly. It got all the way to libjpeg > and bailed out > with the suggestion that I uninstall the version that i installed from > ports alone, > because it is incompatible with the version that php-extensions is > trying to build > and install. > > When I do that and begin the process of installing php56, will it pick > up from were > it left off, or start over from the top? That depends on the dependency version number, or if a port requires an "exact" or "at least" version of a dependency. You can run the # make missing command before you start the build - it will list the things that are missing (or not matching). In case you need to restart a build, # make clean # make # make install is the recommended approach. Running with "partially built stuff" often isn't a good idea and could lead to non-working results, as far as I understand. But you probably don't need to rebuild all the dependencies, so "make clean-recursive" usually isn't needed. > Precompiled packages might be simpler, but if the prebuild binary does > not have > all the extensions and features that I want, and has many that I > don't need or want. That is the main "problem" with precompiled ports: They are being generated from the _default_ options of the port which are set by its maintainer. This will fit in many cases, but not in all cases, and if _your_ case is different, you need to set your individual compile options (which the binary package doesn't reflect). In conclusion, those options might change which dependencies a port requires. As you will see, "make missing" could then lead to a different result. As far as I know, there will be "flavors" of ports that will deal with this "problem", but it's not there yet. Just imagine how many different packages you would need for a port with n options, and then try to find out how to _name_ those... ;-) Typical candidates for this scenario are, for example, multi- media software like mplayer or mencoder, where options might be "I want _all_ codes, even those which are 'illegal' in my country" up to "I just want a very small subset of codecs supported, and I want certain specific compiler optimization flags to make the encoder run on a low-spec system". This is something you usually solve by using ports, manually set options, and maybe even Makefile.local. -- Polytropon Magdeburg, Germany Happy FreeBSD user since 4.0 Andra moi ennepe, Mousa, ...