Exécution d'une application .Net 4.0 avec Wine


17

J'essaie d'exécuter un programme simple dans Wine, sous Ubuntu 14.04 LTS, mais il se plaint que

fixme:mscoree:parse_supported_runtime sku=L".NETFramework,Version=v4.0" not implemented
fixme:mscoree:parse_probing privatePath=L"assemblies" not implemented
The entry point method could not be loaded

Essayer d'installer manuellement .Net 4.0 génère une erreur dans le programme d'installation, indiquant que .Net 4.0 est déjà installé.

Fonctionnement winetricks forcemono

------------------------------------------------------
You are using a 64-bit WINEPREFIX. If you encounter problems, please retest in a
clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing w_do_call forcemono
Executing load_forcemono
Using native override for following DLLs: mscoree
Executing winetricks_early_wine regedit C:\windows\Temp\_forcemono\override-dll.reg
Using override for following DLLs: mscorsvw.exe
Executing winetricks_early_wine regedit C:\windows\Temp\_forcemono\override-dll.reg

Ensuite, essayer de redémarrer la même application échouera toujours avec

err:module:import_dll Library mscoree.dll (which is needed by L"Z:\\home\\<user>\\tmp\\saveedit_r237\\Gibbed.Borderlands2.SaveEdit.exe") not found
err:module:LdrInitializeThunk Main exe initialization for L"Z:\\home\\<user>\\tmp\\saveedit_r237\\Gibbed.Borderlands2.SaveEdit.exe" failed, status c0000135

J'ai essayé Wine 1.6 et 1.7.30 et les deux échouent. Est-ce que .Net 4.0 est réellement implémenté? Ou partiellement mis en œuvre? Existe-t-il un moyen de faire fonctionner cette application .Net 4.0?

Mise à jour

Winetricks se plaint de dotnet40ne pas pouvoir être installé sur un système 64 bits. Alors, comment l'installer?


Pourriez-vous ajouter des détails sur quel programme et sur quelle version de Windows il est conçu?
Wilf

Réponses:


27

Tout d'abord, notez cet avertissement très perceptible:

------------------------------------------------------
You are using a 64-bit WINEPREFIX. If you encounter problems, please retest in a
clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------

Cela indique que vous devez créer un Wineprefix 32 bits , car Wine fonctionne mieux avec des trucs 32 bits - cela peut être fait simplement en exécutant en disant à wine quelle architecture utiliser avant d'exécuter ses commandes (cela peut aussi être fait en désinstallant Wine x86_64 et en installant Wine i386 / i686 - de toute façon, laissez le terminal ouvert pour les autres commandes wine après avoir exécuté ceci) :

export WINEARCH="win32"

Cela définit les variables d'environnement que wine lit avant son lancement (voir man wine).

Ce serait également une bonne idée de le faire créer son propre WINEPREFIX (où le disque virtuel Wine est stocké). Par défaut c'est le cas ~/.wine, mais vous pouvez en créer des individuels pour chaque architecture et programme - donc pour créer un WINEPREFIX dans le répertoire /home/USERNAME/.wine-PROGRAM-NAME/:

export WINEPREFIX=~/.wine-PROGRAM-NAME/

Le répertoire ne doit pas exister (idéalement, il ne devrait pas exister pour que les choses n'aient pas à être écrasées), mais les répertoires parents devraient probablement - vous devriez également avoir la permission de le lire et de l'écrire, et je n'ai pas pense que le wineprefix peut être sur un lecteur FAT / NTFS pour des raisons techniques (cela ne fonctionnera pas) .

Donc, pour configurer un préfixe de vin 32 bits pour un programme:

export WINEARCH="win32"
export WINEPREFIX=~/.wine-PROGRAM-NAME/
wineboot -u

Vous pouvez le remplacer PROGRAM-NAMEpar le nom du programme pour faciliter l'identification ultérieure du programme. Assurez-vous simplement qu'il n'inclut que la lettre et les chiffres car la ponctuation a souvent une fonction spéciale dans divers shells de commande.

Vous devriez alors obtenir une fenêtre comme celle-ci:

le préfixe du vin est en cours de mise à jour ....

Alors vous êtes prêt à partir. Vous pouvez maintenant installer NET 4.0 à l'aide de winetricks(vous voudrez peut-être obtenir la dernière version à partir d' ici d' abord):

winetricks dotnet40

Cela devrait être dans le terminal après la export WINEPREFIX=...commande, ou en le plaçant juste avant la commande wine comme tel (utile pour les lanceurs d'applications sur une seule ligne de commande) :

env WINEPREFIX=~/.wine-PROGRAM-NAME/" winetricks dotnet40

Vous pouvez également utiliser winetrickspour installer d'autres choses , il pourrait avoir besoin - par exemple les polices ( en utilisant les options corefonts, lucida, tahoma). Pour répertorier les options de winetricks, utilisez winetricks list-all.

Vous pouvez ensuite installer le programme à l'aide de wine "~/Downloads/PATH/TO/INSTALLER.exe". Encore une fois (copiez le fichier, puis 'Coller les noms de fichiers' dans le terminal, pour qu'il ne ressemble '/home/wilf/Desktop/name spaces/installer.exe'pas file:///home/wilf/Desktop/name spaces/installer.exe') .

Vous devez vous assurer que le WINEPREFIX a été exporté avant d'exécuter cette commande (surtout si vous avez fermé le terminal), ou sur la même ligne. Après l'avoir fait fonctionner (ou ne pas fonctionner), vous voudrez peut-être faire un rapport sur la façon dont cela fonctionne ici (y compris ce que vous avez fait, etc. afin que vous puissiez aider d'autres personnes). Si vous rencontrez des problèmes et que des erreurs notables apparaissent dans la sortie, vous pouvez signaler un bogue .

Une fois installé, il devrait faire apparaître le lanceur de l'application sur le Dash / Menu et parfois sur le Bureau. Sinon, à l'avenir, pour exécuter l'application, vous devrez peut-être exécuter à nouveau l'application avec export WINEPREFIX=...et wine ....(ou env WINEPREFIX=... wine .....), sauf si vous créez un lanceur (commentaire ci-dessous ou quelque part si vous avez besoin de savoir comment le faire ....)


Plus d'informations, dépannage, etc.

Comment installer winetricks?

Vous pouvez une version des référentiels Ubuntu en utilisant cette commande (ou en installant Winetricks depuis le Software Center):

sudo apt-get install winetricks

Vous pouvez ensuite utiliser winetricks OPTIONSpour faire des choses.

Pour la dernière version, vous pouvez utiliser ces commandes pour télécharger et utiliser la dernière version:

wget  https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks 

Notez que vous devrez l'exécuter en tant que ./winetricks <OPTIONS>, sauf si son répertoire est dans le shell $PATH.

Je ne veux pas utiliser de terminal, que puis-je faire?

L'application que vous souhaitez utiliser peut être exécutable sous PlayOnLinux (elle devrait l'être si vous pouvez la trouver ici ) - c'est à peu près toute l'interface graphique et effectue automatiquement la plupart des étapes pour vous.

Dans le cas contraire, vous pouvez utiliser le terminal pour le faire très facilement (vous avez généralement beaucoup plus de contrôle que si un programme de GUI est de le faire), juste faire attention ce que vous mettez (surtout si elle comprend les commandes sudo, rm, etc.). Essayez de comprendre ce qui se passe avec chaque commande en premier.

En outre, certaines de ces étapes peuvent être effectuées d'autres manières - les deux winecfget winetricksles interfaces graphiques ouvertes à travers lesquelles vous pouvez effectuer certaines étapes, mais là encore, ce que vous pouvez faire est limité.

Comment installer la dernière version de Wine?

Les versions plus récentes de Wine sont plus à jour, donc peuvent être en mesure de mieux exécuter le programme (sauf s'il y a une régression qui l'affecte). Pour installer la dernière version actuelle (Wine1.7), vous pouvez utiliser le Wine PPA officiel :

sudo apt-add-repository ppa:ubuntu-wine/ppa
sudo apt-get update
sudo apt-get install wine1.7

S'il ne trouve pas le package wine1.7, essayez d'exécuter à nouveau la commande d'installation mais avec wineau lieu dewine1.7

Pour installer et configurer Wine en général, vous pouvez également essayer cette question .

Le programme que je souhaite utiliser est conçu pour une version plus récente de Windows, que puis-je faire?

Wine par défaut réplique Windows XP, que certains programmes ne prennent pas en charge car il est EOL (ce que je suppose utile car vous pouvez probablement exécuter des programmes pour WinXP sous Wine sous Linux, et vous pouvez 'nuke WinXP depuis l'orbite' :)

Quoi qu'il en soit, ouvrez d'abord la fenêtre de configuration de Wine:

export WINEPREFIX=~/.wine-PROGRAM-NAME/
winecfg

Où se ~/.wine-PROGRAM-NAME/trouve le WINEPREFIX que vous avez créé précédemment.

Et sélectionnez la version de Windows à répliquer au bas de l'onglet «Applications». Essayez ensuite de réinstaller l'application.

VIRUS DE FENÊTRES SOUS LE VIN?!?!

Très probablement . N'installez pas un logiciel Internet aléatoire, assurez-vous qu'il provient d'un site de confiance.


2
Comme je n'utilise pas beaucoup Wine, je me suis dit que je mettrais directement WINEARCHmon .bashrcscript, puis j'essuyais ~/.winecomplètement et je continuais winetricks dotnet40. Ça fonctionne maintenant. Merci!
Yanick Rochon
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.