Recompile sysutils/htop
after upgrading to base/head
r358063
Somewhere between r357572 and r358062 something changed so dramatically in base/head
that sysutils/htop
didn’t display anything useful other than CPU and memory usage.
It’s possibly due to r358062 which is a huge update of ncurses.
Exhibit A:
Forcefully recompile and forcefully reinstall sysutils/htop
, and we’re back in business!
Exhibit B:
As it turns out, all ports linked to ncurses from base must be recompiled and reinstalled.
Here’s a small script for detecting which packages need updating.
#!/bin/sh if [ "${1}" = phase1 ]; then p='libncurses\.so\.8|libncursesw\.so\.8' for e in /usr/local/*bin/*; do ldd ${e} 2>/dev/null | \ egrep -q ${p} && \ pkg which -q ${e} done for l in /usr/local/lib/lib*.so.*; do objdump -x ${l} 2>/dev/null | \ egrep -q ${p} && \ pkg which -q ${l} done else ${0} phase1 | \ sort -u fi # EOF
I made extra copies of libncurses.so.8
and libncursesw.so.8
and placed them in /usr/lib/compat
. This is handy for getting the installed software running after a reboot. Remember to remove these two libraries from /usr/lib/compat
before recompiling the affected ports. I specifically created the directory /usr/lib-compat
for preserving legacy libraries out of reach of ld.so
(1).