This page is a gathering point for information on lxrun contributed by users.
Steve, I tried to build lxrun on Sol9 x86. It builds but does not run. # lxrun Killed I could get it to work by rebuilding it using a different solaris.mapfile: # diff solaris.mapfile solaris.mapfile.orig < text = LOAD ?RX v0xb0000000; > text = LOAD ?RX v0xc0000000; I just changed the text segment begin address. You might want to make a note of it on your website. Thanks, Jerome
This is what Andreas has to say about his patch:
There are some loose ends. 1. I only tested this on Solaris. so it is probably safest to enclose all of these changes (apart from a couple general bug fixes) in #ifdef SOLARIS. 2. I actually only tested the following new syscalls: vfork mmap2 fstat64 getuid32 getgid32 geteuid32 getegid32 getdents64 fcntl64 vfork is mapped to regular fork, since Solaris vfork doesn't seem to work with lxrun. However, this makes things like pipe() and system() work. Note all the calls dealing with 32-bit uids and gids are just mapped to the regular Solaris calls because Solaris uids and gids are already 32-bit (and short's are promoted to int's in argument passing). In lx_fcntl64 and lx_fstat64, I commented out the parts that are #ifdef OLD_PROCFS in the original version, since I didn't quite follow what is happening there. I mapped the rt_sig* calls to the non-rt versions, since without that system() wouldn't work. Lastly, you will notice that I added a hack to lx_brk() to reduce the overhead of lots of brk() calls from the memory allocator, which can be significant. However, this is disabled by default.
Ive installed Lxrun on Solaris 9 x86 from the Companion CD. I used INSTALL-RH6 with the script from the source code. I had to customize the script somewhat to get Redhat 6 and lxrun to install and work happily on Solaris 9. Would you like a copy? Basically it was adding missing libraries and sorting out a confused lxrun which was trying to find pathmap in a chrooted environment. To this I added large chunks of the Redhat 6.2 Gnome Environment.Here is Stephen's modified INSTALL-RH6.
This is a patch to lxrun-0.9.6pre1 + stolckepatch.txt which addresses
a few issues that occured using lxrun on Solaris 9 x86 with the Red Hat
6.2 runtime.
1) The build failed due to traceargs missing print_stat64 and print_off64.
2) bash had problems systeming other commands (i.e. ls) until Andreas's
signal change was reverted.
3) getrlimit didn't support RLIMIT_AS.
4) flock was not implemented.
5) SIOCGIFHWADDR was not implemented. Note: The included implementation
merely returns the hardware address of the primary network interface.
Enjoy!
Here is John's patch.