[Wine] I can't install anything in WINE. What am I doing wrong?
L. Rahyen
research at science.su
Mon Jan 19 04:15:33 CST 2009
On 2009-01-19 (Monday) 04:05:47 nonzer0 wrote:
> Thanks L. Rahyen and vitamin, I figured it had its own directx, but wasn't
> sure what to do.
>
> OK. I updated my wine to version 1.1.13, and removed the .wine directory.
> I also managed to get COD4 installed, but receive error r6002.I have a few
> questions now.
>
> 1. What is the wine prefix, and how would it be damaged? It came
> preinstalled in ubuntu.
If you not careful enough or install conflicting application in the Wine
prefix - it will be damaged. Damaged Wine prefix means that behavior of
Windows program in such prefix isn't the same as in clean Wine prefix. This
can be said about Windows too, it is very easy to damage it when you either
install a lot of programs or doing something very special.
> 2. After reading through some forums, it says that I am likely missing
> DLLs and to try using winetricks. But I also remember reading that you
> shouldn't use winetricks because it modifies the default files, making it
> harder to diagnose a problem with wine.
Actually it is a tool to help to diagnose your problem, not to make it harder
but to make it simpler. For example, I have a program which work better or
perfectly if I run "winetricks gdiplus". That means, I found a bug in builtin
gdiplus. And this is exactly what should be reported: builtin gdiplus in the
program shows a bug (and use of winetricks gdiplus proves it if native
gdiplus helps the program in question to work better). Then add detailed
description of the problem, and perhaps terminal output - with clean Wine
prefix (all DLLs are set to builtit).
> Also, if you use winetricks, not
> to submit a bug report. Should I use winetricks, or is there a better way
> to go about adding missing DLLs?
I hope above helped you understand how to use winetricks if you want to
report a bug. You may use winetricks to see how particular native DLL(s) may
affect your problem. If some native DLL(s) don't change the buggy behavior
or make it worse - *probably* bug is in other DLL(s). Otherwise, if you are
lucky, you may find out that installing particular minimum set of native DLLs
helps you partially or fully to solve your problem/bug - and this is exactly
what should be added to your bug report: the minimum set of native DLLs
to "fix" the bug. In this way developers will know right away what component
of Wine is buggy.
However, when reporting bug report you should post terminal output and bugs
you found only with clean Wine prefix; minimum set of native DLLs to "fix"
or "bypass" the bug is nothing more than a bit of additional information in
any bug report which may help developers to fix your problem faster. Use of
native DLLs isn't real fix, and any bugs reproducible only with native DLLs
should never be reported except few special cases (please note then everywhere
in this message by "native DLL" I mean here *only* native DLLs with
corresponding builtin replacements in Wine).
> So, should I avoid winetricks in order to help the maintainers of the
> software or is it ok to use it and still report a bug?
I recommend you to use multiple Wine prefixes. ~/.wine is default Wine
prefix. To create some other Wine prefix, do this:
export WINEPREFIX=~/.name-of-your-wineprefix
Optionally you may run "wineboot" to actually create Wine prefix if you want
to copy native DLLs to it by hand (without winetricks). If you are using
winetricks or just want to run setup for your Windows program Wine prefix
defined in WINEPREFIX environment variable will be created automatically for
you.
A program installed and tested in just created Wineprefix is a program tested
in clean Wine prefix. Any bug in Wine you find when doing such test is a bug
to report.
Here is an example. Let's say we have a program X. First, you setup clean
Wine prefix to test it:
export WINEPREFIX=~/.wine-clean
rm -rf $WINEPREFIX
"rm -rf" make sure that ~/.wine-clean is empty. Then you run setup for
program X:
wine programXsetup.exe
Let's say installation went OK. Now you are trying to run program X:
cd ~/.wine-clean/drive_c/Program\ Files/programX/; wine programX.exe
For example, you see that everything works OK but there is some minor UI
bug. You can write your bug report now but don't yet submit it.
Now you try winetricks comctl32 and after this you see the bug "disappeared".
So you add this information to your bug report that problem can be "solved"
by winetricks comctl32 to prove that comctl32 is the component in Wine which
makes UI in program X look wrong.
Of course in most real world cases everything may be much more complex, and
you may need to test the program multiple times. For example, it is good idea
to backup ~/.wine-clean Wine prefix after you installed program and found a
bug in Wine but before running winetricks or copying native DLLs by hand. For
example:
cp -a ~/.wine-clean{,-backup}
By returning to a backup clean copy of your ~/.wine-clean after each
unsuccessful attempt of using native DLLs (either no change in behavior or
worse behavior of the program) you save the time needed to find minimum set
of native DLLs or to find out that use of native DLLs doesn't help at all in
some particular case.
And as I said before remember to describe problems in your bug reports *only*
found when using clean Wine prefix. If some native DLL(s) helped you to "fix"
the problem this may be useful bit of information in the bug report but
that's all: use of native DLLs isn't a real fix.
More information about the wine-users
mailing list