Archive for the 'freebsd' Category

Freebsd Ports - Environmental variables

I’m a big fan of the FreeBSD port system. But the last few weeks
I had problems updating my freebsd ports.

A growing number of ports were giving the following error: “cc: /sbin:/bin:/…:/root/bin: No such file or directory”

A full sample:

libtool: link: cc -shared .libs/lqr_gradient.o .libs/lqr_rwindow.o .libs/lqr_energy.o .libs/lqr_cursor.o .libs/lqr_carver.o .libs/lqr_carver_list.o .libs/lqr_carver_bias.o .libs/lqr_carver_rigmask.o .libs/lqr_vmap.o .libs/lqr_vmap_list.o .libs/lqr_progress.o -Wl,-rpath -Wl,/usr/local/lib -Wl,-rpath -Wl,/usr/local/lib -L/usr/local/lib /usr/local/lib/libglib-2.0.so /sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/root/bin /usr/local/lib/libintl.so /usr/local/lib/libiconv.so /usr/local/lib/libpcre.so -lm -Wl,-soname -Wl,liblqr-1.so.3 -o .libs/liblqr-1.so.3
cc: /sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/root/bin: No such file or directory
gmake[2]: *** [liblqr-1.la] Error 1
gmake[2]: Leaving directory `/usr/ports/graphics/liblqr-1/work/liblqr-1-0.4.1/lqr’
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/ports/graphics/liblqr-1/work/liblqr-1-0.4.1′
gmake: *** [all] Error 2
*** Error code 1

After a lof of debugging and digging deeply in the /work directories of the broken ports. I found out
that libtool was generating a ‘wrong’ cc command. The part -L /sbin:/bin/usr/bin … etc was wrong. The path seperator ‘:’ should not be used. I thought libtool was broken. (Rule X pragmatic programmer: “SELECT Isn’t broken” ;-) )

After dinging deeply in this script I saw the $path variable was placed in this command…

After typing ’set’ to see all environment variables I found out I defined a custom $path variable.
Probably by a typing mistake. Because the real environment variable for path is PATH (uppercase…)

After remove this variable ‘path’ (”unset path” in bash), all my problems were gone…. Yess !

So some words of wisdom: NEVER define an environment variable ‘path’ on freebsd !! (And be VERY careful with your other environment variables!)

FreeBSD, (SuSE) Linux date differences

I wanted to retrieve yesterdays date with a format of YYYYMM
This was solved in FreeBSD like this:

date -v-1d “+%Y%m”

(SuSE) Linux doesn’t know the -v option
The same thing in Linux could be done like this:

date -d yesterday “+%Y%m”

Why the difference?

ANSI Highlighting With less

My less command of my FreeBSD installation doesn’t show the ansi colors embedded in the Rails log file. Well it does shows the codes, but I don’t want to see those.

I found a simple solution for this:

export LESS=’–RAW-CONTROL-CHARS’

Put the code above in the ~/.bashrc/ file and less will finally show the colors…!