Reply
Thread Tools
Posts: 189 | Thanked: 171 times | Joined on Jul 2011
#91
BTW my current wine does not have wine-pthread, I tried finding it with 'find' command but still nothing, does someone know if newer versions are missing this binary for simplicity or whatnot?? Thanks
 
Posts: 26 | Thanked: 0 times | Joined on Apr 2011
#92
Originally Posted by damion View Post
does anyone know any good windows free games wine compatible and fast on a p90-p300 sort of range of machine?
any dos x86 game? try fallout since its turn-based and still has great support at nma forums
 
Posts: 189 | Thanked: 171 times | Joined on Jul 2011
#93
Ok as in wine 1.1.17 they removed "old linux treading" or something similar I tried 1.1.16 and it had wine-pthread. I know 1.2 has no pthread and 1.1.28 doesnt either so I am pretty positive it dissapeared in update 1.1.17. I am now 'ldd -v'ing wine binary so that i copy all the libraries needed (checking if they are symlinks) to a folder and using the qemu binary with the -L option to run wineserver and then wine-pthread... wish me luck
 
Posts: 44 | Thanked: 28 times | Joined on Sep 2011
#94
This is very cool. I have been trying to get this going for about 2-3 days. I can run

qemu-i386 /chroot/lib/ld-linux.so.2 --library-path '/chroot/lib' /chroot/usr/bin/wine-pthread

Which gives me:
qemu: Unsupported syscall: 240
Usage: wine PROGRAM [ARGUMENTS...] Run the specified program
wine --help Display this help and exit
wine --version Output version information and exit

So it does run, if I change my library-path it doesnt get this far. So something is working.

But I cannot chroot. It says:
chroot /chroot
chroot: cannot run command `/bin/sh': No such file or directory

But /chroot/bin/sh is there.. and its the i386 version.

I have used qemu 0.15 compiled myself on my phone (took hours) and ubuntu 9.04 chroot...

I dont have a nokia phone, I have a motorola droid. So I have it chrooted for an ubuntu arm. Then in that enviroment, am I then running vncserver, and then export display=0:1 and then xterm and then try to run qemu-i386, but run i386 compiled apps in a folder called /chroot. I made an img file of /bin /lib, everything you took from slackware, I took from ubuntu 9.04.. stuck it in an image file and mount it with -o loop.


qemu-i386 /chroot/lib/ld-linux.so.2 --library-path '/chroot/lib' /chroot/usr/bin/wine-pthread /chroot/sol.exe

qemu: Unsupported syscall: 240
qemu: Unsupported syscall: 240
wine: fork : Invalid Argument

Even recompiled the kernel to get bin_fmtmisc

Last edited by orokusaki; 2011-09-05 at 09:37.
 
Applesaws's Avatar
Posts: 21 | Thanked: 15 times | Joined on Jan 2011
#95
Originally Posted by orokusaki View Post
This is very cool. I have been trying to get this going for about 2-3 days. I can run

qemu-i386 /chroot/lib/ld-linux.so.2 --library-path '/chroot/lib' /chroot/usr/bin/wine-pthread

Which gives me:
qemu: Unsupported syscall: 240
Usage: wine PROGRAM [ARGUMENTS...] Run the specified program
wine --help Display this help and exit
wine --version Output version information and exit

So it does run, if I change my library-path it doesnt get this far. So something is working.

But I cannot chroot. It says:
chroot /chroot
chroot: cannot run command `/bin/sh': No such file or directory

But /chroot/bin/sh is there.. and its the i386 version.

I have used qemu 0.15 compiled myself on my phone (took hours) and ubuntu 9.04 chroot...

I dont have a nokia phone, I have a motorola droid. So I have it chrooted for an ubuntu arm. Then in that enviroment, am I then running vncserver, and then export display=0:1 and then xterm and then try to run qemu-i386, but run i386 compiled apps in a folder called /chroot. I made an img file of /bin /lib, everything you took from slackware, I took from ubuntu 9.04.. stuck it in an image file and mount it with -o loop.


qemu-i386 /chroot/lib/ld-linux.so.2 --library-path '/chroot/lib' /chroot/usr/bin/wine-pthread /chroot.sol.exe

qemu: Unsupported syscall: 240
qemu: Unsupported syscall: 240
wine: fork : Invalid Argument

Even recompiled the kernel to get bin_fmtmisc
The problem is that the kernel doesn't know to run x86 applications with qemu unless you tell it to with binfmt. And since wine-pthread doesn't know to fork things by calling qemu (the kernel is supposed to step in and do that if binfmt is configured correctly when it sees an x86 application), nothing works unless binfmt works. Unfortunately, AFAIK no one has been able to make the chroot work, most experiencing similar errors to yours, probably indicating that we all have problems with our chroots or our binfmt magic is configured incorrectly.
Damion, please come back and help us =(
 
Posts: 44 | Thanked: 28 times | Joined on Sep 2011
#96
See if this helps us.. I did a cat. I have been messing with the "interpreter".

root@localhost:/proc/sys/fs/binfmt_misc# cat i386
cat i386
enabled
interpreter /usr/bin/qemu-i386 /chroot/lib/ld-linux.so.2 --library-path /chroot/
lib
flags:
offset 0
magic 7f454c46010000000000000000000000020003
mask fffffffffffefefffffffffffffffffffbffff

------------------------------------------------------

I wish that one guy would run cat on i386 so we could compare.
 
Posts: 44 | Thanked: 28 times | Joined on Sep 2011
#97
root@localhost:/# update-binfmts --display
update-binfmts --display
cli (disabled):
package = mono-common
type = magic
offset = 0
magic = MZ
mask =
interpreter = /usr/bin/cli
detector = /usr/lib/cli/binfmt-detector-cli
python2.6 (disabled):
package = python2.6
type = magic
offset = 0
magic = \xd1\xf2\x0d\x0a
mask =
interpreter = /usr/bin/python2.6
detector =
 
Posts: 44 | Thanked: 28 times | Joined on Sep 2011
#98
Try with this patch today.
http://patchwork.ozlabs.org/patch/45206/
 
Posts: 189 | Thanked: 171 times | Joined on Jul 2011
#99
Good to see some activity, just updating to say school started and I have not had time to work on the n900, i already have enough with a system I have to finish soon.

@orokusaki
I believe if you install busybox you get chroot, no need for ubuntu mobile, just in case you did not know this
and about the NPTL I also tried with Slack 10.4 (2.4 Pre-NPTL kernel) and it still failed with the forking error, the problem is probably the binfmt
EDIT2: According to this https://bugs.launchpad.net/qemu/+bug/739785 you are right, however that leaves me VERY confused with why slack 10.4 did not work with me?? I will patch, compile and test

Question to all, if you run bash with the ./qemu-i386 /chroot/ld-linux bladibla and place the qemu executable in /chroot/bin can you run it from the chroot?? because if you can then the problem would most probably be binfmt
Question 2: how do I find the magic of binary files?? This could help a lot to solve the binfmt issues (of course Damion and his chroot would help too )

EDIT: Ok, I tested the first question and I got the forking error, still does not exclude binfmt
about the second question using the command 'file' reads the first bytes to find the magic and check it against a file in the HD if I understand correctly (/usr/share/file/magic), looking into it to find if the magic for i386 is correctly established.

On a sidenote, if I have time I will set up scratchbox and compile qemu-i386-static, which is actually made for chrooting (rather than qemu-i386 which is made for dynamically loading executables, orokusaki you might also want to look into this for your device ) or find all the libraries wine requires and keep on testing, hope I get somewhere

Last edited by pablocrossa; 2011-09-11 at 21:16.
 
Posts: 44 | Thanked: 28 times | Joined on Sep 2011
#100
Let it be known to the world, that I Justin Shafer got solitare to run on Wine today, with android and qemu-i386!

I think I know why we are having so many problems!

I am NOT creating a chroot for x86 to run wine and solitaire.

I DID create a /usr/gnemul/qemu-i386\usr and lib folders and copied X86 stuff into those folders.. then created a /usr/lib/wine folder and copied the X86 info into there.. THEN IT WORKED!

My binfmt is working fine I guess!
 

The Following User Says Thank You to orokusaki For This Useful Post:
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 21:29.