Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Derniers commentaire(s) [Tous] :


wine pour amd64

Posté le 06 janvier 2005
Vous vous demandiez depuis toujours comment faire tourner des applications windows sur votre amd64, moi aussi, et voici comment.
Le matériel de base:
un gcc compilé avec --enable-multilib (gcc -v pour le savoir). J'ai récupéré le mien chez debian, il faut quelques patches pour obtenir ce gcc bi-arch. D'ailleurs l'annonce est ici: http://lists.debian.org/debian-amd64/2004/08/msg00084.html(...)
ccache si vous aimez les compilations pas trop longues
les bibliothèques 32-bit de base: ia32-libs et ia32libs-dev chez moi. Windows est uniquement 32 bit (sauf pour des bouts 16-bits, quelle cohérence admirable), donc on compile wine en 32 bits.
les bibliothèques de dév de X11
sans doute des petits trucs que j'ai oublié, mais vous vous en rendrez compte par vous-même :)
A titre indicatif, voici les build-deps sur une ubuntu 32bit; beaucoup ne sont pas indispensables.
debhelper (>= 4.1.16), flex-old | flex (<< 2.5.31), bison,
xlibs-dev, xlibmesa-dev | libgl-dev, xlibmesa-glu-dev | xlibmesa-dev (<= 4.2.1-4) | libglu-dev,
freeglut3-dev | libglut-dev | glutg3-dev,
libncurses5-dev, libcupsys2-dev, libjpeg62-dev | libjpeg-dev, libungif4-dev,
libfreetype6-dev, libasound2-dev, libjack0.80.0-dev | libjack-dev,
libartsc0-dev | libarts-dev, libaudio-dev | nas-dev, libsane-dev, libusb-dev,
libicu21-dev | libicu-dev, libfontconfig1-dev, libssl-dev, libcapi20-dev
Et la bonne version de wine, la 20040914 ( ici:http://sourceforge.net/project/showfiles.php?group_id=6241&pack(...) ):
à ce jour, les versions 20041201 et 20041219 ne tourneront pas (chez moi) sur une ubuntu même 32.

on configure (je crois que le AS est déjà bon par défaut):
AS='as --32' CC='ccache gcc-3.4 -m32' CXX='ccache g++-3.4 -m32' LD='ld -m elf_i386' ./configure --x-libraries=/usr/X11R6/lib32
on /patche/ :
sed -i s/SYS_sigaction/SYS_rt_sigaction/g dlls/ntdll/signal_i386.c
Il y a peut-être une alternative en modifiant le include pour qu'il utilise le sys/signal.h en version i386 qui va bien, mais comme-ça ça marche.

on construit:
make depend all
(comptez dans les 2h)

on installe:
sudo make uninstall install

on configure: wine
on utilise: wine /mnt/loop0/Setup.exe

Pour les masos, voici comment compiler les versions suivantes , qui on le rappelle ne s'exécutent pas correctement:
le LD n'a plus besoin d'être précisé; par contre il faut éditer à la main tools/winebuild/main.c, et y définir *ld_command = "ld -m elf_i386'
ou peut-être éditer Make.rules.in, ligne WINEBUILD, faire un --ld-cmd=$(LD) , je ne suis pas spécialiste de la syntaxe des Makefile.

> Lire le journal (4 commentaires, moyenne: 2,3).