Not logged inRybka Chess Community Forum
Up Topic Rybka Support & Discussion / Rybka Discussion / Ubuntu: How to install 64-bit wine [SOLVED]
1 2 3 4 Previous Next  
- - By Jesse Gersenson (***) Date 2010-12-14 10:47
OpenSUSE 11.3 and Sabayon Linux 5.4 both run wine with automatic support for 64-bit applications. So, for example, in Sabayon 5.4 I
1. install wine,
2. install Arena, and can
3. add native Deep Rybka 64-bit as an engine from within Arena.

no need for microwine or engineclient.

Has anyone gotten 64-bit rybka to run in Ubuntu 10.10, without using microwine?
Parent - - By urodets (**) [ua] Date 2010-12-14 11:23
I didn't try a wine64+Rybka (i use gentoo). If it works, huge pages will not work (it's a microwine hack :)) There is a transparent hugepages patch available for kernel, I going to test it.
Parent - - By Jesse Gersenson (***) Date 2010-12-14 12:15 Edited 2010-12-14 14:43
Sabayon is based on gentoo - and it DOES work, i didn't check large pages.

I have 64-bit wine working on xubuntu but only 64-bit is working. 32-bit is not working. Still need to do some tweaking.

Got 64-bit working using but it broke 32-bit. (i added a step 3 'sudo sh install-wine-deps.sh)
http://www.spinics.net/lists/wine/msg82472.html

(will report back when i get both working)
Parent - - By InspectorGadget (*****) [za] Date 2010-12-14 12:28
So Jesse, is it still okay to install this 64bit wine if I already have wine running in Ubuntu? :confused:
Parent - - By Jesse Gersenson (***) Date 2010-12-14 13:18
InspectorGadget,

i'm still not sure.

will tell you if i am able to get both 32-bit and 64-bit programs to run side by side.
so far I can either get 64-bit engines to run (using the above process for installing 64-bit wine) or 32-bit programs to run (using the standard ubuntu wine install) but can't get 32-bit windows programs to run 64-bit programs.

am working on this now. will report back by the end of the day.
Parent - - By InspectorGadget (*****) [za] Date 2010-12-14 13:47
Thanks Jesse, much appreciated :smile:
Parent - - By Jesse Gersenson (***) Date 2010-12-14 17:30 Edited 2011-05-10 16:25
It works!

Xubuntu 10.10 is able to run 64-bit wine.

Here are the steps I followed.

http://www.jesseo.com/chess/64-bit-wine-ubuntu.sh

install Arena 2.5
1. download http://www.playwitharena.de/downloads/arena_2.5_beta.zip
once it's installed try running the pre-installed 64-bit version of rybka 2.2
Parent - - By InspectorGadget (*****) [za] Date 2010-12-15 05:40
Hey Jesse,

Thanks, I will try this when I get home.

I'm not a Linux boffin, just a user who likes Linux. I'm able to find my way out most of the times. Having said that, I'm not sure what the bold part means   "9  ../wine-git/configure --enable-win64". Is it a path where WINE is installed or do I have to type it as is?.

Out of curiosity, starting from step 11. Can't one just installed wine from the WINE repositories and execute step 14 and 15 later? :smile:

Anyway, I'm at work at the moment and will definitely do this when I get home.

Thanks a lot :smile:
Parent - - By Jesse Gersenson (***) Date 2010-12-15 08:10
All of these steps are things you enter into a terminal.

There should probably be more steps at the end - as running programs does not seem to work correctly with
wine ProgramName.exe

but does work with, enter this from a terminal:

~/wine32/./wine /path/to/ProgramName.exe

after you use this command once a folder will be created in your home directory:
~/.wine
Parent - By InspectorGadget (*****) [za] Date 2010-12-15 08:55
Thanks :smile:
Parent - - By Felix Kling (Gold) [de] Date 2010-12-15 12:24
do I need to uninstall wine before trying it for a "not blank" installation?
Parent - - By Jesse Gersenson (***) Date 2010-12-15 16:24
Felix, yes (i think so).

My answer is based only on what I've read on http://wiki.winehq.org/Wine64 - and the ubuntu forums - they usually suggest uninstalling a program before compiling from source.

in my instructions you are compiling two versions of wine, a 32-bit one and a 64-bit one, and they are being joined together.

fyi, to launch arena i use the command:
/home/MYUSERNAME/wine32/wine /home/MYUSERNAME/.wine/drive_c/Program\ Files\ \(x86\)/arena_2.5_beta/Arena.exe
Parent - - By Jesse Gersenson (***) Date 2010-12-17 11:51
Felix, let me know if it worked. I'd like to post this 'corrected' process at wine.
Parent - By Felix Kling (Gold) [de] Date 2010-12-17 12:49
I came home yesterday and try it now :) I'll tell you the result
Parent - - By Felix Kling (Gold) [de] Date 2010-12-17 14:11 Edited 2010-12-17 14:22
ok, at least 32 bit wine works now as it did before ;) but when i try to use a 64 bit exe, I get:
fkling@fkling-desktop:~$ '/home/fkling/wine64/wine'  '/home/fkling/Aquarium/Engines/Rybka 4 x64.exe'
err:winedevice:ServiceMain driver L"atksgt" failed to load
err:winedevice:ServiceMain driver L"lirsgt" failed to load
err:winedevice:ServiceMain driver L"oreans32" failed to load
wine: failed to update /home/fkling/.wine with /home/fkling/wine32/tools/wine.inf: No such file or directory
Trying to load PE image for unsupported architecture (AMD-64)
err:process:create_process starting 64-bit process L"Y:\\Aquarium\\Engines\\Rybka 4 x64.exe" not supported in 32-bit wineprefix
wine: Bad EXE format for Y:\Aquarium\Engines\Rybka 4 x64.exe
Parent - - By Felix Kling (Gold) [de] Date 2010-12-17 15:24
I just checked, but I did everything exactly like you wrote it. It looks like 64 bit support is not enabled somehow.
Parent - By Jesse Gersenson (***) Date 2010-12-20 08:59 Edited 2010-12-20 09:06
Likely it because the wine version in the process i outlined above is based around the 'git-tree' copy of wine. it's constantly changing. I figured this out while I was testing a script to automate this process. (winetricks was sometimes working, sometimes failing. btw, the script is now working well. renames .wine to .wine2 [though it'll likely stop if you already have a .wine2 folder :wink:)

automation script to install 64-bit wine on ubuntu

it uses wine version 1.3.9. available at sourceforge
http://switch.dl.sourceforge.net/project/wine/Source/wine-1.3.9.tar.bz2

extract to folder wine-1.3.9 with the command:
tar -xjvf wine-1.3.9.tar.bz2
Parent - - By InspectorGadget (*****) [za] Date 2010-12-20 09:30
I will try it when you and Jesse have figured it out, as for now, nope :lol:
Parent - - By Jesse Gersenson (***) Date 2010-12-20 12:54
InspectorGadget, If you try the script i wrote - it'll work.

it first uninstalls wine1.0 wine1.2 wine1.3
then downloads and compiles.

try it in virtualbox if you want to test it first.
here's the current version of the script (i'll update the script on my site, if necessary).
#!/bin/bash --
# author: Jesse Gersenson
# file: 64-bit-wine-ubuntu.sh
# version: 0.2.3
# status: working
#
#
# what's it for? 
# ------------------
# for people who want to run 64-bit *.exe engines (or other exe programs) in Ubuntu, from 32-bit GUI's
# such as Arena or Aquarium. 
# 
# This is an alternative to microwine. microwine uses
# large pages and works with rybka 4 and rybka 2.3.2a. 
# it does not currently run other 64-bit engines.
# 
# the script automatically compiles a 32-bit/64-bit install of wine on Ubuntu 10.10 64-bit.
# this is a temporary fix - eventually 64 bit wine will be installable from the Ubuntu 
# package manager - as is currently (written Dec 19, 2010) the case with Sabayon 5.4 and OpenSUSE 11.3.
#
#
# how to use it?
# ------------------
# 1. first, update your system. use these two lines at the command prompt:
# sudo apt-get update
# sudo apt-get upgrade
# reboot your system.
#
# 2. save the script, http://www.jesseo.com/chess/64-bit-wine-ubuntu.sh, to your 
# user's home folder /home/USERNAME
#
# 3. open a terminal and change it's permissions by entering
# sudo chmod +x 64-bit-wine-ubuntu.sh
#
# 4. run the script with the following command
# ./64-bit-wine-ubuntu.sh
#
# let it run for about an hour. it will download about 1gb of data and will compile two version of
# wine. depending on the speed of your machine
# and internet connection, the script can take a few hours. on a 800KB connection, with an i3m
# processor, it takes about 40 minuets. 
# note: don't interupt the script. it'll take a while. this message will be on the screen for a
# long time, "Configure: Finished. Do 'make' to compile wine"
#
# i hope this doesn't break your computer - 
# but i guess it could. enjoy, Jesse. 
#
echo -n "Enter the number of cpu threads to use when compiling:"
read cores
echo "$cores threads will be used."
# make a directory in the user's root folder, in one we'll be compiling 32-bit wine, in the
# other 64-bit wine
cd 
if [ -d wine64 ]
  then echo "the folder wine64 already exists."
    echo "moving wine64 to wine64-old and creating directory wine64"
    sudo mv wine64 wine64-old
    echo "if you already have a wine64-old directory - the script probably just failed. delete"
    echo "wine64-old manually with sudo rm -r wine64-old - then run the script again"
    mkdir wine64
  else 
    echo "creating directory wine64"
    mkdir wine64
fi
if [ -d wine32 ]
  then echo "the folder wine32 already exists"
    echo "moving it to wine32-old and creating a fresh /wine32"
    echo "if you already have a wine32-old directory - the script probably just failed."
    echo "delete wine32-old manually with sudo rm -r wine32-old - then run the script again"
    sudo mv wine32 wine32-old
    mkdir "wine32"
  else 
    echo "making directory wine32"
    mkdir wine32
fi
if [ -d .wine ]
  then echo "the folder .wine already exists. renaming folder .wine2 and uninstalling wine"
    sudo mv .wine .wine2
    sudo apt-get remove wine1.0 wine1.2 wine1.3
  else
    echo "i couldn't find an installed version of wine."
    sudo apt-get remove wine1.0 wine1.2 wine1.3
fi
# add the wine repository and update all repositories.
# update the repository. -y means don't prompt us with Y/N questions. 
sudo add-apt-repository ppa:ubuntu-wine/ppa
sudo apt-get -y update
# grab wine64 development packages
if [ -e install-wine-deps.sh ]
  then echo "install-wine-deps.sh is already on your machine?! we won't download a second copy"
  else 
    echo "running: wget http://winezeug.googlecode.com/svn/trunk/install-wine-deps.sh"
    wget http://winezeug.googlecode.com/svn/trunk/install-wine-deps.sh
fi
# change permissions of the script 
chmod 755 ./install-wine-deps.sh
#
# run the script with root privileges. you'll be prompted for your root password.  
sudo sh install-wine-deps.sh
#
# grab the 32-bit dependencies for wine1.3
# note: eventually this would need to be updated to wine1.4, wine 18.2, etc
sudo apt-get -y build-dep wine1.3
sudo apt-get -y install cabextract
#
# grab wine version 1.3.9 from sourceforge and untar it
if [ -e wine-1.3.9 ]
  then echo "the folder /wine-1.3.9 was already in your root directory. i'm deleting it and"
  echo "will grab a fresh copy from"
  echo "http://switch.dl.sourceforge.net/project/wine/Source/wine-1.3.9.tar.bz2"
  sudo rm -r wine-1.3.9
  else
    echo "getting a copy of wine-1.3.9 from "
    echo "http://switch.dl.sourceforge.net/project/wine/Source/wine-1.3.9.tar.bz2"
    echo "and extracting it to your user's root directory"
fi
wget http://switch.dl.sourceforge.net/project/wine/Source/wine-1.3.9.tar.bz2
tar -xjvf wine-1.3.9.tar.bz2
#
# change into the wine64 directory in the user's home directory. 
# change into the wine64 directory in the user's home directory. 
cd ~/wine64
#
# configure 64-bit wine
../wine-1.3.9/configure --enable-win64
#
# make the install using 5 threads. this is a good number if you have 4 processors. 
# note: change the number to -j2 if you have a dual core machine
echo "Compiling 64-bit wine. This will take 5 min - 5 hours, depending on the speed of your machine"
make -j$cores > make.log 2>&1
#
# change to the wine32 directory and build the 32 bit version of wine. tying it together 
# with the 64-bit version we just built
cd ~/wine32
../wine-1.3.9/configure --with-wine64=../wine64
echo " "
echo "64-bit wine compiled. log file saved as ~/make.log"
echo " "
echo "Now compiling 32-bit wine. This will take 5 min - 5 hours, depending on the speed of your machine"
sudo make -j$cores > make.log 2>&1
echo "finished make of 32-bit wine. now we'll run sudo make install"
#now make wine64
cd ~/wine64
echo " "
echo "32-bit make install complete. now we'll run sudo make install on the 64-bit build"
sudo make install
echo " "
echo "done."
# the script is done. 
# here are the steps one would use to use winetricks - hacked 
# to disable their disabling winetricks on 64-bit wine systems
# install cabextract, riched30, and gdiplus
wget http://www.jesseo.com/chess/winetricks.sh
cd
chmod +x winetricks.sh
./winetricks.sh riched30
./winetricks.sh gdiplus
Parent - - By InspectorGadget (*****) [za] Date 2010-12-20 13:42
I have an extra hard drive, I will first try it there. How do guys know so much about this stuff? :lol:
Parent - - By Jesse Gersenson (***) Date 2010-12-20 13:54
online, we're IM's, International webMasters.
Parent - By InspectorGadget (*****) [za] Date 2010-12-20 14:03
:lol:
Parent - By TheHug (Bronze) [us] Date 2010-12-20 19:31
If you keep that up we will give you the GM title of, webGrandmaster
Parent - By urodets (**) [ua] Date 2010-12-21 08:18
i guess it'd be better to make a *.deb package for that
Parent - - By Jesse Gersenson (***) Date 2010-12-17 15:30
try running a 64-bit engine from within arena instead of from the command line.

also, rename your current .wine folder .wine-dec172010 so the newly installed versions of wine can rebuild a fresh .wine folder.

fyi, it works fine from within arena but i get this when trying to run 64-bit rybka from the command line
jesse@jesse:~/wine64$ ./wine Deep\ Rybka\ 4\ x64.exe
Trying to load PE image for unsupported architecture (AMD-64)
fixme:heap:HeapSetInformation 0x7f330cde4000 0 0x7f330e0bfd50 4
fixme:heap:HeapSetInformation 0x7f7824604000 0 0x7f78258dfd50 4
fixme:heap:HeapSetInformation 0x7f97fde84000 0 0x7f97ff15fd50 4
fixme:heap:HeapSetInformation 0x7f43429d4000 0 0x7f4343cafd50 4
Parent - By Felix Kling (Gold) [de] Date 2010-12-17 17:44
ok :) I needed to rename the .wine directory, could have realised it myself, the error message basically said so if I look at it now ;)

I'll add this to our Linux page on our website, I'll simply give both methods there, since this solution has also some disadvantages (no automatic wine updates and so on)
Parent - - By Felix Kling (Gold) [de] Date 2010-12-17 17:57
Is there a way to install gdiplus (and riched30) from winetricks under 64 bit? Winetricks won't work and As long as I can't install gdiplus, Aquarium doesn't look well. Simply pasting the dll file to the system32 folder didn't do the trick
Parent - - By Jesse Gersenson (***) Date 2010-12-17 19:10
will check on winetricks.

advantages to this method: run other 64-bit engines, such as stockfish, rybka 2?!, etc.
Parent - - By Jesse Gersenson (***) Date 2010-12-17 19:44
In winetricks there is a line of code which tests to see if 64 bit wine is installed and, if it is, the script stops.
this is because winetricks isn't yet working well with 64-bit wine.

i.e, it prevents people from screwing up their wine install.

to side step this, either use the winetricks file i'm attaching (run with sh winetricks) or
edit the winetricks file /usr/bin/winetricks, or whereever you have the script
and change win64 to XXXwin64 in the following passage:

# Warn the user if on win(e)64, since a lot of winetricks is broken for it
if [ "$ARCH" = "win64" ]
then
    die "You're using a 64-bit WINEPREFIX, most of winetricks hasn't been fixed for win64 yet. You can force a 32-bit WINEPREFIX by using WINEARCH=win32."
fi
Attachment: winetricks (186k)
Parent - By Felix Kling (Gold) [de] Date 2010-12-17 23:01
ok, had to replace $WINE in that script with my path to wine, now it works, perfect :)
Parent - - By Felix Kling (Gold) [de] Date 2010-12-17 22:58
yes, sure, it's great that it runs with that method :)
Parent - By Felix Kling (Gold) [de] Date 2010-12-18 00:07
Just to add that I mentioned the negative aspects, since I thought about completely removing the old instructions :)
Parent - By Sesse (****) [no] Date 2010-12-19 00:50
FWIW, microwine can run Rybka 2.3.2a. Probably not Stockfish, though, but you can just run that as a native engine.

/* Steinar */
Parent - - By Felix Kling (Gold) [de] Date 2010-12-18 12:22
ok, added to our website :)
Parent - - By Jesse Gersenson (***) Date 2010-12-18 13:08
Looks good.

fyi, Steiner's microwine is able to use large pages.

Here's how:
Large Pages in Xubuntu 10.10 64-bit, using regular (non-root) user

Here are the three steps I took to get large pages working

1a. open a terminal window and enter

sudo mousepad /etc/sysctl.conf

1b. add the following lines at the bottom of the file and then save and exit

  vm.nr_hugepages = 575
  kernel.shmmax = 2511724800
  kernel.shmall = 2511724800

2. open a terminal window and enter

sudo mousepad /etc/security/limits.conf

add the following lines at the bottom of the file and then save and exit. replace 'MYusername' with YOUR username
  MYusername          soft    memlock        12582912
  MYusername          hard    memlock        12582912

3. reboot

microwine Rybka should now, automatically, user large pages (you do not need to configure the engine at all)

4. To check that it's working. Start microwine rybka and enter the following into a terminal

cat /proc/meminfo

you will see the number of HugePages_Total and the number of HugePages_Free. If it's working, the number of HugePages_Free will be less than HugePages_Total.

For example, on my machine, which is using 16 pages, it looks like this:

  HugePages_Total:     575
  HugePages_Free:      559
Parent - - By Felix Kling (Gold) [de] Date 2010-12-18 13:45
ok, works :) I'll add that to the Linux page, too (I used gedit instead of mousepad of course, for those Ubuntu guys who read this :) )
Parent - - By Ray (****) Date 2010-12-18 14:38
Sounds a million times easier just to install Windows 7 x64 :twisted:
Parent - By Felix Kling (Gold) [de] Date 2010-12-18 14:40
Well, it sounds easier first, but on the other hand you get the discomfort and the problems of using Windows. and you pay even money for that :)
Parent - - By Felix Kling (Gold) [de] Date 2010-12-18 17:06
mmh, now I have an extra 1 GB memory used from the system after startup. It lead to swapping when starting programs...
Parent - - By Jesse Gersenson (***) Date 2010-12-18 17:14
I don't use large pages for exactly this reason. It gets worse - if you turn off the engine, and start it again, you'll have another gb gone?!

to undo the large pages, just follow the steps in reverse.
Parent - By urodets (**) [ua] Date 2010-12-18 17:34
to check the shared memory allocation you can use the ipcs -m (man ipcs for more information) and clear the shared memory use ipcrm -m (man ipcrm for more info)
you don't need to do a reverse steps to clear huge pages.
Parent - - By Jesse Gersenson (***) Date 2010-12-18 18:22
I wrote an install script to automate this. just copied the commands (see above) into a text file, added #!/bin/bash before the first line and saved it as macrowine.sh.

am testing it now on a fresh install of Ubuntu.

not sure what else could/should be included in the script.
should it automatically get the winetricks updates?
download, unpack and install arena?
get the command 'wine' to work like it used to ;)

suggestions/requests?
Parent - - By Felix Kling (Gold) [de] Date 2010-12-18 19:46
it could get riched30 and gdiplus, yes, that would be useful. it could also rename an existing .wine folder if it's there - and it should tell the user to be patient, since "make" can take quite some time :)
Parent - - By Jesse Gersenson (***) Date 2010-12-18 20:18 Edited 2010-12-19 01:23
wrote an install script. it
updates the repositories and the system
downloads wine 1.3.7 and all build tools/dependencies
compiles wine32 and wine64
grabs a hacked version of winetricks (so it'll be usable with 64-bit wine) and installs gdiplus and riched30.

downloads the dependencies and uses version 1.3.7 (not the git repository as in my example above - felix please change the Linux page accordingly - see comments in script if necessary)

script's here:
http://www.jesseo.com/chess/64-bit-wine-ubuntu.sh
Parent - - By Jesse Gersenson (***) Date 2010-12-19 00:59 Edited 2010-12-19 13:32
Here the UPDATED PROCESS. Instead of using the git sources, which are unstable, we now use wine version 1.3.9 and we sudo make install on the 64-bit version.

1. Install blank Ubuntu 10.10 Desktop 64-bit

Get copiler + dev packages
2. wget http://winezeug.googlecode.com/svn/trunk/install-wine-deps.sh
3  chmod 755 ./install-wine-deps.sh
4. sudo sh install-wine-deps.sh
 
Get wine version 1.3.9 + untar:
5. wget http://switch.dl.sourceforge.net/project/wine/Source/wine-1.3.9.tar.bz2
6. tar -xjvf wine-1.3.9.tar.bz2

Compile* 64-bit wine
    7  mkdir ~/wine64
    8  cd ~/wine64
    9  ../wine-1.3.9/configure --enable-win64
    10  make > make.log 2>&1

* if you are using multiple cpus, you can compile with all cores by using, for a machine with 4 threads,
    10  make -j5 > make.log 2>&1

get dependencies and compile 32-bit wine   
11  mkdir ~/wine32
   12  cd ~/wine32
   13  sudo apt-get build-dep wine1.2
   14  ../wine-1.3.9/configure --with-wine64=../wine64
   15  sudo make -j5 > make.log 2>&1
   16 sudo make install
17 cd ~/wine64
18 sudo make install
Parent - By Jesse Gersenson (***) Date 2010-12-22 08:19
urodents - you can try to build the deb file. I tried.

after download source code for wine1.3, supplied by ubuntu's wine ppa, i edited the /debian/rules file to enable 64-bit. no luck.
wrote the package maintainer for ubuntu's wine code. will see if he can help.
Parent - - By Felix Kling (Gold) [de] Date 2010-12-22 14:28
is there a way to make it work for 64 bit Wine?
Parent - By Jesse Gersenson (***) Date 2010-12-22 22:37
Felix, the script I've posted above does work with 64-bit wine. It is exactly what anyone wanting to use 64-bit engines with Arena/Aquarium would need. The drawback is that it takes 1-2 hours to run and must download 200mb-1gb of data.

I was reading the blog of the guy in charge of the Ubuntu wine project and he didn't paint a very pretty picture about the current state of the 64/32 bit SHARED BUILD, this is what they call it when both types of programs can run from one install.

Hopefully he'll write back and tell me it's possible. It's not something I'm going to try figuring out on my own (tried it yesterday and failed several times.)
Parent - - By Jesse Gersenson (***) Date 2011-01-04 10:27
Felix,

could you please update the instructions on the Linux Installation page. The process listed there uses the ultra-unstable GIT version of wine.

here is an updated process which uses wine 1.3.9:

Get copiler + dev packages
2. wget http://winezeug.googlecode.com/svn/trunk/install-wine-deps.sh
3  chmod 755 ./install-wine-deps.sh
4. sudo sh install-wine-deps.sh
 
Get wine version 1.3.9 + untar:
5. wget http://switch.dl.sourceforge.net/project/wine/Source/wine-1.3.9.tar.bz2
6. tar -xjvf wine-1.3.9.tar.bz2

Compile* 64-bit wine
    7  mkdir ~/wine64
    8  cd ~/wine64
    9  ../wine-1.3.9/configure --enable-win64
    10  make > make.log 2>&1

* if you are using multiple cpus, you can compile with all cores by using, for a machine with 4 threads,
    10  make -j5 > make.log 2>&1

get dependencies and compile 32-bit wine   
11  mkdir ~/wine32
12  cd ~/wine32
13  sudo apt-get build-dep wine1.2
14  ../wine-1.3.9/configure --with-wine64=../wine64
15  sudo make -j5 > make.log 2>&1
16 sudo make install
17 cd ~/wine64
18 sudo make install
Up Topic Rybka Support & Discussion / Rybka Discussion / Ubuntu: How to install 64-bit wine [SOLVED]
1 2 3 4 Previous Next  

Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill