Newbie FreeBSD/Linux Question
wc_fbsd at xxiii.com
wc_fbsd at xxiii.com
Thu Mar 9 02:32:06 UTC 2006
At 05:30 PM 3/8/2006, you wrote:
>I am a newbie trying to compile the program JACK that is required
>for the midi sequencer Rosegarden. This program (JACK) is not
>available through the ports collection and is intended for a Linux
>system. I am
Perhaps I'm not understanding the whole scenario, but are you trying
to compile it BSD native, or compile and run it in Linux compatibility mode?
If you're trying to use Linux compatibility mode, you need to make
sure your session is really running in that mode. It's been a year+
since I tried it, but it wasn't real obvious in the handbook
IIRC. You need to get a shell running in Linux mode first; that
gets the "union" file system going, so the stuff in /compat/linux is
"overlayed" on the root filesystem. The uname command is probably
the most simple confirmation, eg:
$ uname -a
FreeBSD meddle.xxiii.com 5.4-STABLE FreeBSD 5.4-STABLE #8: Tue Jul 26
13:28:17 EDT 2005
$ ls /compat/linux/bin
basename date ksh pwd stty
bash dd ln rm sync
bash2 echo ls rmdir touch
chgrp egrep mkdir rpm true
chmod false mknod setserial uname
chown fgrep mv sh
cp grep nice sleep
$ /compat/linux/bin/bash
bash-2.04$ uname -a
Linux meddle.xxiii.com 2.4.2 FreeBSD 5.4-STABLE #8: Tue Jul 26
13:28:17 EDT 2005
Once you have an executable running in compatibility mode (the shell
in this case), it will search the directory in /compat/linux first,
and failing that look in the real root system. So if you type "make"
and the first directory in your path is /usr/bin, it really looks in
/compat/linux/usr/bin first, then the real /usr/bin. I doubt the
standard Linux mode on FBSD has all the stuff to compile & link
native Linux code, however.
Hope I'm not re-stating the obvious, but once I figured this out, the
compatibility mode made a BUNCH more sense.
-Wayne
More information about the freebsd-questions
mailing list