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 04/09/2025, à 18:31

Jpécé

[RESOLU] Wine et dlls spécifiques

Pour s'exécuter sous Wine, certains logiciels exigent une version spécifique de quelques bibliothèques .dll (ou .ocx pour de très anciens logiciels).

Avant tout, il faut être conscient que le besoin de bibliothèques spécifiques s'est considérablement réduit dans les versions récentes de Wine, qui intègrent de plus en plus d'éléments, notamment les directX 9 et 10, les dotNet, les exécutables vcrun.... L'installation via winetricks de ces éléments de compatibilité devient superflue.

Pour rappel, la solution brutale traditionnelle consiste à lancer sous Wine l'installateur du logiciel. En conséquence, l'environnement "préfixe" .wine s'enrichit des bibliothèques spécifiques à ce logiciel et certaines bibliothèques préinstallées dans l'environnement .wine peuvent être écrasées par les versions imposées par l'installateur. En conséquence, il devient nécessaire, en cas de création d'un nouvel environnement d'exécution .wine, de réinstaller chaque logiciel ainsi installé, afin de pouvoir l'exécuter dans un nouvel environnement.

Une solution plus conforme aux nouvelles capacités de l'environnement standard Wine permet d'éviter la pollution des répertoires de .wine par chaque installateur de logiciel. Elle consiste à copier les quelques dlls spécifiques du logiciel directement dans le répertoire d'installation du logiciel. En effet, ce sont les dlls situées dans le répertoire local d'installation qui sont recherchées en premier par le logiciel au lancement de son exécution sous Wine. Donc, en créant ce répertoire d'installation augmenté en dehors de .wine, on rend le logiciel autonome tout en conservant le contenu du .wine d'origine. En prime, il devient pratique d'utiliser un utilitaire de menu portable, par exemple pstart de Pegtop, pour regrouper dans une sous-fenêtre les icones de lancement des logiciels ainsi rendus autonomes dans leurs propres répertoires.

Comment obtenir le contenu du répertoire installé d'un logiciel sans lancer son installateur sous Wine ? Par la récupération du contenu du répertoire du logiciel installé dans un système MS, ou dans une machine virtuelle de système MS si on tient à rester sous Linux. Autre solution : lancer l'installateur sous Wine pour installer le logiciel dans un répertoire propre hors de .wine puis recréer un environnement .wine à neuf.

Un premier test logique est alors de tenter d'exécuter tel quel le logiciel à partir d'un .wine standard commme si ce logiciel était autonome dans son propre répertoire, afin de constater son éventuel besoin de bibliothèques spécifiques si le lancement échoue.

Si le lancement sous Wine standard dans les conditions standard échoue, il faut déterminer la liste des bibliothèques spécifiques nécessaires. Sous système MS, il existe plusieurs utilitaires capables d'afficher la liste des bibliothèques en cours d'utilisation d'un logiciel. Par exemple, l'utilitaire Process Hacker est (encore en 09/2025) disponible via gratilog.net EN VERSION PORTABLE compacte à partir de sourceforge - refuser la montée en version system informer ! Evidemment, on ne pourra repérer ainsi que les éventuelles bibliothèques visiblement spécifiques d'après leurs noms, pas les modules standards modifiés - mais c'est suffisant dans le cas des logiciels bureautiques.

NB. A signaler tout de même : il existe une limite à la possibilité d'exécution d'un logiciel en autonomie à partir de son propre répertoire augmenté de ses bibliothèques spécifiques. En effet, quelques rares dlls ne s'éxécutent correctement qu'à l'intérieur des répertoires "système", et ne peuvent donc être intégrées dans un répertoire de logiciel. Par exemple d3d9.dll semble dans ce cas, mais par contre chacun des éléments des d3dx9_xx.dll peut s'exécuter dans un répertoire quelconque. A priori, ces cas où l'on est contraint d'accepter l'écrasement d'une bibliothèque standard dans .wine, sont exceptionnels pour d'anciens logiciels de jeux ou de traitement de vidéos.

NB. Noter par ailleurs, à toutes fins utiles, que Process Hacker en version portable fonctionne aussi sous Wine.

Hors ligne