Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 21/11/2008, à 00:33

Zakhar

[Résolu] Compiler Wine - Intrepid 64bits

Bonjour,

je tente de compiler WIne pour inclure un patch afin de corriger un bug de sauvegarde sur Warcraft 3.

En suivant : http://wiki.winehq.org/Patching

J'ai donc récupéré le GIT

Appliqué le patch avec succès.

Là je suis à la première étape de la compilation ça me bloque au ./configure avec un message prétendant que mon compilateur C ne sait pas faire des exécutables... un comble !

Voici la log du configure (à l'endroit de l'erreur)

configure:2746: gcc -m32 --version >&5
gcc (Ubuntu 4.3.2-1ubuntu11) 4.3.2
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:2750: $? = 0
configure:2757: gcc -m32 -v >&5
Using built-in specs.
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.3.2-1ubuntu11' --with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3 --program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.3.2 (Ubuntu 4.3.2-1ubuntu11) 
configure:2761: $? = 0
configure:2768: gcc -m32 -V >&5
gcc: '-V' must come at the start of the command line
configure:2772: $? = 1
configure:2795: checking for C compiler default output file name
configure:2817: gcc -m32    conftest.c  >&5
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.3.2/libgcc.a when searching for -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.3.2/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: ld returned 1 exit status
configure:2821: $? = 1
configure:2859: result: 
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME "Wine"
| #define PACKAGE_TARNAME "wine"
| #define PACKAGE_VERSION "1.1.8"
| #define PACKAGE_STRING "Wine 1.1.8"
| #define PACKAGE_BUGREPORT "wine-devel@winehq.org"
| /* end confdefs.h.  */
| 
| int
| main ()
| {
| 
|   ;
|   return 0;
| }
configure:2865: error: in `/home/user/wine-git':
configure:2868: error: C compiler cannot create executables

Ah oui, j'ai aussi installé build-essentials.

Une idée du problème ?

Bien sûr le compilateur C d'Intrepid sait évidemment compiler un programme... il m'a compilé sans problème mon "Hello, World!"

Dernière modification par Zakhar (Le 21/11/2008, à 20:17)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#2 Le 21/11/2008, à 10:51

Zakhar

Re : [Résolu] Compiler Wine - Intrepid 64bits

Personne ?
Bon, je vais aller voir sur les forums U.S. s'il y a des pros de la compile Wine wink


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#3 Le 21/11/2008, à 11:24

Zakhar

Re : [Résolu] Compiler Wine - Intrepid 64bits

Avec tout ça je vais y arriver :

http://ubuntuforums.org/showthread.php?t=987129

http://wiki.winehq.org/WineOn64bit

(Patch du bug qui fait crasher à la sauvegarde) http://bugs.winehq.org/show_bug.cgi?id=11188

(Patch du switch screen) http://ubuntuforums.org/showthread.php?t=795714

(Pour l'installer sans écraser le Wine "officiel" de la version) http://forum.ubuntu-fr.org/viewtopic.php?id=267733

(Pour les réglages) http://ubuntuforums.org/showthread.php?t=906957

Je sens que je vais profiter de mon disque Windows qui ne me sert quasi pas pour faire un Wubi de développement big_smile

[Edit : et voila, ça marche parfaitement... il arrive encore que la sauvegarde plante (plus rarement) mais visiblement sans effacer le fichier sauvegardé ce qui permet de reprendre. Et avec les petits réglages, tout marche impeccable, aussi fluide que sous W$]

Dernière modification par Zakhar (Le 21/11/2008, à 20:16)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#4 Le 24/11/2008, à 21:49

Zakhar

Re : [Résolu] Compiler Wine - Intrepid 64bits

Tutoriel de compilation :

Comme on va devoir installer des trucs de développement, si vous ne voulez pas "polluer" votre installation, je vous suggère de vous faire un petit Wubi (ou Lubi si vous avez complètement jeté W$). Ca vous permettra de garder votre installation "propre"... enfin... c'est vous qui voyez, moi je fais ça sur mon Wubi de développement wink

- Prendre le source de la version désirée (page principale de WInHQ : http://www.winehq.org/, par exemple pour la 1.1.9 http://prdownloads.sourceforge.net/wine … .9.tar.bz2)
- Créer un répertoire (par exemple wine-src dans son "home")
- Puis y décompresser les sources (clic droit > extraire ici)
- Vous devez obtenir un répertoire wine-1.1.9 (ou marqué du numéro de version que vous avez choisi)
- Téléchargez votre patch (ou copier/coller dans un fichier à l'éditeur) par exemple ce patch http://bugs.winehq.org/attachment.cgi?id=8368 pour le bug de la sauvegarde de Warcraft 3 => nom du fichier save.patch (par ex.)
- Maintenant on va dans le terminal  (adaptez les noms de répertoires et de fichiers aux noms que vous avez donnés)

On applique son patch
(répétez l'opération de patch pour tous les patches que vous devez faire.

cd ~/wine-src/wine-1.1.9
patch -p1 < save.patch

On prépare pour la compilation (extrait de http://wiki.winehq.org/WineOn64bit )
Téléchargement des fichiers de développement (500MB !) et création des liens symboliques pour les librairies 32bits.

sudo apt-get build-dep wine
mkdir -p `pwd`/lib32
ln -s /usr/lib32/libX11.so.6 `pwd`/lib32/libX11.so
ln -s /usr/lib32/libXext.so.6 `pwd`/lib32/libXext.so
ln -s /usr/lib32/libfreetype.so.6 `pwd`/lib32/libfreetype.so
ln -s /usr/lib32/libfontconfig.so.1 `pwd`/lib32/libfontconfig.so
ln -s /usr/lib32/libGL.so.1 `pwd`/lib32/libGL.so
ln -s /usr/lib32/libGLU.so.1 `pwd`/lib32/libGLU.so
ln -s /usr/lib32/libXrender.so.1 `pwd`/lib32/libXrender.so
ln -s /usr/lib32/libXinerama.so.1 `pwd`/lib32/libXinerama.so
ln -s /usr/lib32/libXxf86vm.so.1 `pwd`/lib32/libXxf86vm.so
ln -s /usr/lib32/libXi.so.6 `pwd`/lib32/libXi.so
ln -s /usr/lib32/libXrandr.so.2 `pwd`/lib32/libXrandr.so
ln -s /usr/lib32/liblcms.so.1 `pwd`/lib32/liblcms.so
ln -s /usr/lib32/libpng12.so.0 `pwd`/lib32/libpng.so
ln -s /usr/lib32/libcrypto.so.0.9.8 `pwd`/lib32/libcrypto.so
ln -s /usr/lib32/libssl.so.0.9.8 `pwd`/lib32/libssl.so
ln -s /usr/lib32/libxml2.so.2 `pwd`/lib32/libxml2.so
ln -s /usr/lib32/libjpeg.so.62 `pwd`/lib32/libjpeg.so
ln -s /usr/lib32/libXcomposite.so.1 `pwd`/lib32/libXcomposite.so
ln -s /usr/lib32/libcups.so.2 `pwd`/lib32/libcups.so
ln -s /usr/lib32/libXcursor.so.1 `pwd`/lib32/libXcursor.so
ln -s /lib32/libdbus-1.so.3 `pwd`/lib32/libdbus-1.so
ln -s /usr/lib32/libhal.so.1 `pwd`/lib32/libhal.so
ln -s /usr/lib32/libsane.so.1 `pwd`/lib32/libsane.so
ln -s /usr/lib32/libgphoto2.so.2 `pwd`/lib32/libgphoto2.so
ln -s /usr/lib32/libgphoto2_port.so.0 `pwd`/lib32/libgphoto2_port.so
ln -s /usr/lib32/libldap-2.4.so.2 `pwd`/lib32/libldap.so
ln -s /usr/lib32/libldap_r-2.4.so.2 `pwd`/lib32/libldap_r.so
ln -s /usr/lib32/liblber-2.4.so.2 `pwd`/lib32/liblber.so
ln -s /usr/lib32/libxslt.so.1 `pwd`/lib32/libxslt.so
ln -s /usr/lib32/libcapi20.so.3 `pwd`/lib32/libcapi20.so
ln -s /usr/lib32/libjack.so.0 `pwd`/lib32/libjack.so
ln -s /usr/lib32/libodbc.so.1 `pwd`/lib32/libodbc.so
ln -s /usr/lib32/libgnutls.so.26 `pwd`/lib32/libgnutls.so

On prépare un répertoire pour installer sa version de Wine (sinon on peut l'installer directement à la place de celle officielle...)
Ceci est facultatif, mais recommandé. Par exemple, le patch ci-dessus pour Warcraft 3 supprime du code dans le kernel sur une des fonctions qui sert à l'enregistrement, de sorte que le code retour de la fonction soit ce qu'on veut. Ce n'est pas ce que j'appelle exactement une "correction" du problème, mais plutôt un contournement. On ne peut donc pas considérer que c'est souhaitable d'avoir ça pour tous les programmes qu'on lance avec Wine !

mkdir ~/wine-install

Compilation ! (allez prendre un café wink )

CC="gcc-4.3 -m32" LDFLAGS="-L/lib32 -L/usr/lib32 -L`pwd`/lib32 -Wl,-rpath,/lib32 -Wl,-rpath,/usr/lib32" ./configure --prefix=${HOME}/wine-install -v
make depend
make
make intall

Voila, maintenant votre Wine patché et compilé se trouve dans votre répertoire wine-install.
Pour le tester, lancer vos commandes à partir de ce répertoire (en le mettant dans le path en premier par exemple).

Et ensuite, afin de pouvoir gérer les deux installations de Wine : la standard par Synaptic et celle qu'on vient de patcher, on doit lancer les commandes ainsi, par exemple pour lancer winecfg :

#! /bin/bash
export PATH=${HOME}/wine-install/bin:${PATH}
export LD_LIBRARY_PATH=${HOME}/wine-install/lib:${LD_LIBRARY_PATH}
export WINEPREFIX=${HOME}/.wine1.1.9
winecfg

Et donc à la dernière ligne, vous lancez le jeu par exemple par :
wine C:\\Program\ Files\Warcraft\War.exe

Bien sûr, n'oubliez pas de rendre le script exécutable, et pour faciliter le tout d'en faire un lanceur sur le bureau.

Enjoy !

Dernière modification par Zakhar (Le 25/11/2008, à 20:27)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#5 Le 24/01/2011, à 00:41

ghigo73

Re : [Résolu] Compiler Wine - Intrepid 64bits

Bonjour,avant tout merci pour ce  tuto du bon travaille .J ai compiler wine pour installer empire total war nécessitant le patch http://bugs.winehq.org/show_bug.cgi?id=18490  tout c'est bien passer,winecfg se lance sans problème en revanche quand j exécute (a la derniere ligne)wine C:\\Program Files\Empire\Empire.exe j'ai le message suivant:wine: cannot find 'C:\Program'.Autres question:que contient le fichier wine-install?,le mien est vide,et comment je dois proceder pour rendre le script exécutable et d'en faire un lanceur sur le bureau?Merci  Mon système:Ubuntu 10.10 64 bits

Hors ligne

#6 Le 26/04/2015, à 17:44

dva2tlse

Re : [Résolu] Compiler Wine - Intrepid 64bits

Put... les mecs' chapeau; ça vous emmène loin du petit démineur ces jeux. BRAVO !
David


xubuntu 22.04 dans un PC assemblé
PS: Dis toto, pourquoi l'univers existe-t'il ?
Je vais y réfléchir avec Morphée et lui dès avant 22h55, donc ici, il faut se contacter auparavant.

Hors ligne