[Wine] Performing a Regression Test

James McKenzie jjmckenzie51 at earthlink.net
Thu Mar 4 21:52:03 CST 2010


dimesio wrote:
> zac wrote:
>   
>> So, I ran this command:
>>
>> CC="ccache gcc" ./configure --verbose && make depend && make
>>
>> Then this long complicated process started with a lot of terminal output. Then it finished.
>>
>> Is that it? Is so called 'compiling' over?? 
>>     
>
> Yes.
>
>   
>> I'm struggling with this, and cannot move on. I was reading the README document at /wine-git, and that's why I decided to run make uninstall, and then make install. But I just don't know what is this that I'm doing. The wiki guide says this is not a good idea, while the README file says I should do it... Or maybe I misunderstood it all! [Shocked] 
>>     
>
> You should NOT make install when running a regression test. Run the Wine you've compiled from the wine-git directory.
>
>
>   
>> What is 'mv ~/.wine ~/.wine-backup'
>>     
>
> That renames ~/.wine to ~/.wine-backup. This way you can test your app in a clean wineprefix, and when you're done, just restore your old one by renaming it back to ~/.wine.
>
>
>   
>> Do I need to uninstall my older version of wine?
>>     
>
> No, because you're not installing the version you compiled.
>   
dimensio:

He did try make install, which may have corrupted part of his Wine
installation.

HOWEVER, everything else you wrote is true.

Here is how to do this:

cd to wine-git.

git bisect start
git bisect good <wine-tag where program worked>
git bisect bad <wine-tag where program stopped working>

Where wine-tag is a wine version like wine-1.1.39 or wine-1.1.6

then you run ./configure && make deps && make

DO NOT RUN make install.

Then cd $HOME

mv wine{,.backup}

cd to the directory with the test program

/<location of wine-git>/wine <program to install test program>

example

/opt/local/wine-git/wine setup.exe

if you want to capture a log file example:

/opt/local/wine-git/wine setup.exe > logging_file.log 2>&1

Switch to the directory where the program installed:

cd $HOME/.wine/drive_c/Program\ Files/<Install\ Directory>

Note:  spaces have to be 'escaped' with a backslash.

run the program substituting the exe name in either of the above
examples.  I recommend renaming the logging file as well to separate
between installation and actual program runs.

cd <wine-git directory>
make clean

If the program runs:

git bisect good

If the program does NOT run:

git bisect bad

repeat until you get a message that states which commit is 'bad'.  Now,
here comes the part that confuses most people, this MAY NOT be the
actual bad commit. 

run:

make clean
git reset --hard
git show <commit number, usually a 32 alphanumeric> | patch -p1 -R

./configure && make deps && make

If your program runs, you found the problem!  If not, you have more work
to do.  Rerun the git bisect series again....(but remember you removed
the first bad commit.)

I had to do this three times when I had a problem.  Fortunately, the fix
was already in git and I just had to skip a few releases of Wine.

Good luck and happy bug hunting.

James McKenzie

Run your program again.  If it runs without the




More information about the wine-users mailing list