I had been trying to install J64-804 to run in FreeBSD Linux emulation but
could not fix this error:
/lib64/ld-linux-x86-64.so.2 not found, error 2
I thought I didn't have the links right, but it's probably that linux_base-c7
is 32bit. I'll update to Release 11.0 first, then follow your steps. When
I get that working I may look into creating the native port, but that's a
bit deeper water than I've been in.
Heartening reply, thank you.
Ben
On Mon, Oct 17, 2016 at 11:47 PM, Nico de Jager wrote:
> Benedict Archer writes:
>
> > Has anyone looked at or is there any interest in either porting J to
> > freebsd or running under the freebsd linux emulation?
>
> I am running 64-bit J (J701 with GTK+ interface and J80x with QT) on
> FreeBSD 11.0 under 64-bit Linux emulation (see *** below for a quick
> overview).
>
> I would be interested in a native port. It appears some work has been
> done on the J Engine:
> http://www.jsoftware.com/pipermail/source/2014-February/000538.html
> https://github.com/tangentforks/j/tree/freebsd64
>
> HTH.
> Nico
>
> ***
>
> 1. Set up a minimal Linux environment:
> - Do a minimal Debian Stable install without "standard system
>utilities" task in e.g. a virtual machine.
>
> 2. Install dependencies:
> - For jconsole:
># apt-get install libedit-dev
> - For jqt: (Note: This will pull in a lot of dependencies).
># apt-get install libqtwebkit4
># apt-get install libqt4-declarative
> - For GTK+:
># apt-get install libgtk2.0
>
> 3. Set up FreeBSD
> - Normally you'll install emulators/linux_base-c7 , but I provided my own
> 64-bit Debian environment as above, since at the time of this writing,
> the linux environment installed by emulators/linux_base-c7 in
> /compat/linux is 32-bit. You may decide to use a 64-bit port in the
> future, though.
> - On the linux machine prepared in 1 & 2 above:
> - Copy over the Linux environment:
> # apt-get install rsync
> # apt-get clean
> # cd /
> # rsync -av bin etc lib lib64 opt sbin usr var \
> root@FreeBSD_Machine:/compat/linux/
> You may have to create /compat/linux
> - On the FreeBSD machine:
> - Further prepare the Linux environment:
> - Fix absolute symbolic links:
> # cd /compat/linux &&
> find . -lname '/*' |
> while read l ; do
> echo ln -sfn $(echo $(echo $l | sed
> 's|/[^/]*|/..|g')$(readlink $l) | sed 's/.//') $l
> done |
> sh
> # cd /compat/linux
> # mkdir dev mnt proc srv sys
> # ln -s /var/run run
> # ln -s /tmp dev/shm
> # ln -s /usr/home home
> - Remove/move the passwd, group, hosts and resolv.conf files so that
> it falls through to the FreeBSD directories:
># cd /compat/linux/etc
># mkdir ndj_backup
># mv hosts resolv.conf passwd* group* shadow* gshadow* ndj_backup/
> - Prepare FreeBSD itself:
> # kldload linux64
> # echo 'linux64_enable="YES"' >> /etc/rc.conf
> # echo 'linprocfs /compat/linux/proc linprocfs rw 0
>0' >> /etc/fstab
> # mount linprocfs
> - Unpack the J binaries in your user's home directory and enjoy.
>
> References:
> - See the "Linux Binary Compatibility" in the FreeBSD Handbook.
>
--
For information about J forums see http://www.jsoftware.com/forums.htm