ports/164826: handbook ports page does not suggest config-recursive which should be a standard suggestion as it saves huge time
Peter Maloney
peter.maloney at brockmann-consult.de
Mon Feb 6 14:40:10 UTC 2012
>Number: 164826
>Category: ports
>Synopsis: handbook ports page does not suggest config-recursive which should be a standard suggestion as it saves huge time
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: doc-bug
>Submitter-Id: current-users
>Arrival-Date: Mon Feb 06 14:40:09 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator: Peter Maloney
>Release: 8.2-STABLE csup'd at 20110927
>Organization:
Brockmann Consult
>Environment:
FreeBSD bczfsvm1.bc.local 8.2-STABLE-20110927 FreeBSD 8.2-STABLE-20110927 #0: Thu Jan 26 12:07:29 UTC 2012 root at bcnas1bak.bc.local:/usr/obj/usr/src/sys/GENERIC amd64
>Description:
Installing ports is very time consuming, and since they are probably used to binary distribution systems, new users may be discouraged from using FreeBSD if done wrong. The handbook does not suggest usage of "make config-recursive" to speed things up. Instead it suggests only "make install", which means there will be long pauses between user interaction. When there are many dependencies, this makes building a single port a huge hassle.
eg.
cd /usr/ports/emulators/virtualbox-ose
make install
download... wait...
menu pops up:
┌────────────────────────────────────────────────────────────────────┐
│ Options for virtualbox-ose 3.2.12_1 │
│ ┌────────────────────────────────────────────────────────────────┐ │
│ │ [X] QT4 Build with QT4 Frontend │ │
│ │ [ ] DEBUG Build with debugging symbols │ │
│ │ [X] GUESTADDITIONS Build with Guest Additions │ │
│ │ [X] DBUS Build with D-Bus and HAL support │ │
│ │ [ ] PULSEAUDIO Build with PulseAudio │ │
│ │ [X] X11 Build with X11 support │ │
│ │ [X] VDE Build with VDE support │ │
│ │ [X] VNC Build with VNC support │ │
│ │ [X] WEBSERVICE Build Webservice │ │
│ │ [X] NLS Native language support │ │
│ └────────────────────────────────────────────────────────────────┘ │
│ │
User must hit "OK"
download... wait...
menu pops up:
│ Options for glib 2.26.1_1 │
│ ┌────────────────────────────────────────────────────────────────┐ │
│ │ [X] COLLATION_FIX fix string collation │ │
│ └────────────────────────────────────────────────────────────────┘ │
User must hit "OK"
download... wait...
menu pops up
etc. etc. At least 12 times.
So it is better to instead do:
make config-recursive
then do all the selections and "OK" in one batch, then
make install clean
Please add that to the handbook.
>How-To-Repeat:
a new FreeBSD user reads http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ports-using.html
Then they type the following commands:
# cd /usr/ports/emulators/virtualbox-ose
# make install clean
>Fix:
Add another note to handbook, right after "Note: You can save two extra steps by just running make install clean instead of make, make install and make clean as three separate steps."
[addthis]
When installing a port, using only "make install" from the beginning means there will potentially be many waiting periods between user interaction. When there are many dependencies, this sometimes makes building a single port a huge hassle. To avoid this, first run "make config-recursive" to do the configuration in one batch. Then run "make install [clean]" afterwards.
[/addthis]
Another alternative to the above handbook change would be to add a new target, maybe named "install-recursive" that is the same as "make config-recursive install", and add that in the handbook, replacing "install"
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list