Date: Fri, 23 May 2008 02:15:41 -0500 (CDT) From: "Ross Gohlke" <developer@grinz.com> To: freebsd-questions@freebsd.org Subject: Perspective on ports for non-experts Message-ID: <50650.74.170.92.99.1211526941.squirrel@grinzport.grinz.com> In-Reply-To: <50810.74.170.92.99.1211493506.squirrel@grinzport.grinz.com> References: <48345138.8080507@ibctech.ca> <4834599A.1090108@infracaninophile.co.uk> <4834A7B4.9030302@ibctech.ca> <20080521232319.GA57359@osiris.chen.org.nz> <4834B7EE.3000002@ibctech.ca> <20080522020619.GA69543@osiris.chen.org.nz> <4834D891.6050707@ibctech.ca> <20080522035913.GA78449@osiris.chen.org.nz> <483503AD.60801@infracaninophile.co.uk> <4835634F.6060107@ibctech.ca> <20080522203932.GA74897@osiris.chen.org.nz> <50810.74.170.92.99.1211493506.squirrel@grinzport.grinz.com>
next in thread | previous in thread | raw e-mail | index | archive | help
I am a jack-of-all-trades, master of none sysadmin. There's a lot to love about FreeBSD, but ports take the cake. The procedures below work 99% of the time for virtually any software I need to run. I have never had a problem I couldn't quickly fix. I actually had to use portdowngrade once, and it worked! My normal ports routine is: % cd /usr/ports/ % portsnap fetch update % portsdb -u % portaudit -Fa % pico UPDATING % portversion -l '<' [OR] portversion -v |less % portupgrade -vr postfix % portupgrade -vr clamav .... If I'm installing a new port: % cd /usr/ports % make search name=postfix % cd mail/postfix % make install clean In my experience, if the instructions in the Handbook don't work, finding the workaround often involves hunting and pecking across the Internet, as well as learning new concepts and commands. I've never seen something like "An Introduction to make". I only recently learned how to retrieve the graphical configuration screen after an installation without deinstalling/reinstalling: % make configure Some of you will laugh, but some will know exactly what I'm talking about. Where should I have learned that? Please don't send me to man! The one thing I'm looking for in man pages is examples. I hardly ever find them. ## ## How to replace wrong binary packages with source packages I'm ready to run X11/KDE. It seems like the perfect time to learn how to use ports for binary packages, since X11/KDE are non-essential and will take a couple of days to compile and install. ## http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/packages-using.html % pkg_add -r kde3 Error: FTP Unable to get ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6.1-release/Latest/kde3.tbz: File unavailable (e.g., file not found, no access) pkg_add: unable to fetch 'ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6.1-release/Latest/kde3.tbz' by URL So I used: % pkg_add -r ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages/Latest/kd3.tbz I think I should have used /packages-6-stable/. Instead I ended up with binaries for 7 (I guess). I don't understand the first thing about linking/dynamic compiling. All I know is I couldn't upgrade any of these packages using portupgrade. Here's an example: % portupgrade -vr qt ... /usr/bin/ld: warning: libz.so.4, needed by /usr/local/lib/libqt-mt.so, not found (try using -rpath or -rpath-link) I don't have a list of every binary package installed, but through a process of elimination I eventually weed out all the bad binaries: % pkg_deinstall -v qt This is better than make deinstall because it quits if there is a dependency rather than just reporting it. Run the same command for each package depending on qt, then run it on qt again. Keep running this command until it succeeds: % cd /usr/ports/x11/kde3 % make configure Use the warning messages to figure out which ports need to be removed. Is there a better way to rectify this situation? Ross Gohlke
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?50650.74.170.92.99.1211526941.squirrel>