Is it possible to have 2 versions of Wine on one computer that will not interfere with each other? I have an older version of Wine installed now (0.9.12) and have it set up for an app I love but I don't want to mess with it because it is a pain to fix any problems. I want to leave that one as is. I was hoping that I could have a newer version installed somewhere on this computer that would not cause any compatibility issues. Does anyone know if that is do-able? Has anyone (who knows what they're doing) ever tried it?
This is what I tried so far: I installed the newer version to a custom location and after I ran the winecfg from within the new directory (which is in a sub folder in my home directory), the already established program, WTLibray crashed. So I deleted the .wine folder (which is in my home directory) ran winecfg again and then copied over my backed up files from the old Wine installation.
The Older Wine is still there (in /usr/bin) but the WTLibrary program might be using the newer one, I don't know which one. Is there a way to tell?
So anyway, I'm confused about the .wine folder -- should there be only one and if there can be two, where should the other one be put so that the new wine will read from that one and not the older one?
It's perfectly all possible to have as many wine versions as you want; you just have to set WINEPREFIX to the correct .wine folders; for example:
export WINEPREFIX=/home/user/.wine-0.9.12
You may have to copy the /home/user/.wine/dosdevices folder to /home/user/.wine-0.9.12 (it contains symlinks to the directories that represent your C: drive, CD-rom, ...)
You also need to add the bin/ and lib/ dirs to your PATH and LD_LIBRARY_PATH.
> Is it possible to have 2 versions of Wine on one computer that will > not interfere with each other? I have an older version of Wine > installed now (0.9.12) and have it set up for an app I love but I > don't want to mess with it because it is a pain to fix any problems. I > want to leave that one as is. I was hoping that I could have a newer > version installed somewhere on this computer that would not cause any > compatibility issues. Does anyone know if that is do-able? Has anyone > (who knows what they're doing) ever tried it?
> This is what I tried so far: > I installed the newer version to a custom location and after I ran the > winecfg from within the new directory (which is in a sub folder in my > home directory), the already established program, WTLibray crashed. So > I deleted the .wine folder (which is in my home directory) ran winecfg > again and then copied over my backed up files from the old Wine > installation.
> The Older Wine is still there (in /usr/bin) but the WTLibrary program > might be using the newer one, I don't know which one. Is there a way > to tell?
> So anyway, I'm confused about the .wine folder -- should there be only > one and if there can be two, where should the other one be put so that > the new wine will read from that one and not the older one?
If you compile Wine from source, just run it from the directory in which you compiled it. If you install from binary tarball, you may be able to do the same thing. Run file wine-0.9.44/wine, which is a symlink to ./tools/winewrapper.
You may or may not need a separate Wine prefix area to use with the different versions of the program.
-- Robert Riches spamtra...@verizon.net (Yes, that is one of my email addresses.)
> On 2007-08-29, ses...@yahoo.com <ses...@yahoo.com> wrote:
> > Is it possible to have 2 versions of Wine on one computer that will > > not interfere with each other? I have an older version of Wine > > installed now (0.9.12) and have it set up for an app I love but I > > don't want to mess with it because it is a pain to fix any problems. I > > want to leave that one as is. I was hoping that I could have a newer > > version installed somewhere on this computer that would not cause any > > compatibility issues. Does anyone know if that is do-able? Has anyone > > (who knows what they're doing) ever tried it?
> > This is what I tried so far: > > I installed the newer version to a custom location and after I ran the > > winecfg from within the new directory (which is in a sub folder in my > > home directory), the already established program, WTLibray crashed. So > > I deleted the .wine folder (which is in my home directory) ran winecfg > > again and then copied over my backed up files from the old Wine > > installation.
> > The Older Wine is still there (in /usr/bin) but the WTLibrary program > > might be using the newer one, I don't know which one. Is there a way > > to tell?
> > So anyway, I'm confused about the .wine folder -- should there be only > > one and if there can be two, where should the other one be put so that > > the new wine will read from that one and not the older one?
> If you compile Wine from source, just run it from the > directory in which you compiled it. If you install from > binary tarball, you may be able to do the same thing. Run > file wine-0.9.44/wine, which is a symlink to > ./tools/winewrapper.
> You may or may not need a separate Wine prefix area to use > with the different versions of the program.
> -- > Robert Riches > spamtra...@verizon.net > (Yes, that is one of my email addresses.)
Is the winewrapper tool the same as doing: ./configure make, make install? Does it let you put the wineconfig files in a different location?
> On Aug 29, 5:59 pm, "Robert M. Riches Jr." <spamtra...@verizon.net> > wrote:
>> If you compile Wine from source, just run it from the >> directory in which you compiled it. If you install from >> binary tarball, you may be able to do the same thing. Run >> file wine-0.9.44/wine, which is a symlink to >> ./tools/winewrapper.
>> You may or may not need a separate Wine prefix area to use >> with the different versions of the program.
> Is the winewrapper tool the same as doing: ./configure make, make > install? Does it let you put the wineconfig files in a different > location?
The winewrapper script describes itself with the following:
# Wrapper script to run Wine and Winelib apps from inside the source tree
Doing './configure', 'make depend', and 'make' compile the source code into binary, with the binaries in the source tree. You can have as many of these areas as you like.
Doing 'make install' installs the binaries into /usr/bin or wherever. Obviously, only one version can be present in /usr/bin (or in each 'wherever').
If by 'wineconfig' you mean the wine prefix area, $WINEPREFIX, that's the fake windows area into which you install your applications. They are (almost) entirely independent of installations (or source trees) for the Wine program.
-- Robert Riches spamtra...@verizon.net (Yes, that is one of my email addresses.)
> No problem as long as you're willing to experiment :^)
> -- > Fabrice DELENTE
Yes, I did it from source. This is the command I used: ./configure -- prefix=/home/<username>/Wine0944
So, would wineprefix be something like this? wineprefix=/home/ <username>/Wine0944
And I don't understand what LD_LIBRARY_PATH is. If that means the libraries that Wine needs, I just let it find and use what's on my system. Do I have to simlink them all or something? I still don't quite understand.
> On Aug 30, 6:30 pm, <fdele...@mail.cpod.fr> wrote: >> gymn...@gmail.com wrote: >> > I have it installed already so, can this all be done now, or do I have >> > to reinstall it?
>> You can do this after installing, WINEPREFIX, PATH and LD_LIBRARY_PATH are >> environment variables that can be changed at any moment in you shell.
>> Did you install through RPMs or compile from the source?
>> No problem as long as you're willing to experiment :^)
>> -- >> Fabrice DELENTE
> Yes, I did it from source. This is the command I used: ./configure -- > prefix=/home/<username>/Wine0944
> So, would wineprefix be something like this? wineprefix=/home/ ><username>/Wine0944
> And I don't understand what LD_LIBRARY_PATH is. If that means the > libraries that Wine needs, I just let it find and use what's on my > system. Do I have to simlink them all or something? I still don't > quite understand.
If you're compiling from source, you don't need to worry about LD_LIBRARY_PATH or any of that stuff. If $WINEDIR is the directory in which you compiled Wine, simply execute $WINEDIR/wine, and it will just work.
-- Robert Riches spamtra...@verizon.net (Yes, that is one of my email addresses.)
gymn...@gmail.com wrote: > So, would wineprefix be something like this? wineprefix=/home/ > <username>/Wine0944
WINEPREFIX (all caps) tells wine where to look for system.reg (the equivalent of the Windows registry).
> And I don't understand what LD_LIBRARY_PATH is. If that means the > libraries that Wine needs, I just let it find and use what's on my > system. Do I have to simlink them all or something? I still don't > quite understand.
When you configure wine, and you don't give it --prefix, 'make install' will put the programs in /usr/local/bin and the librairies and dlls in /usr/local/lib; these locations are standard, so you don't need to put them in your PATH or LD_LIBRARY_PATH.
However, if you configure wine with
./configure --prefix=/some/dir
then make and make install, the programs will go in /some/dir/bin, and the librairies and dlls in /some/dir/lib; these locations are non-standard, so Linux doesn't find them, except if you add them to your PATH and LD_LIBRARY_PATH:
That way, Linux will look for programs in your old PATH (this is what $PATH stands for) and in /some/dir/bin; same things for the librairies.
If you have installed one version of wine in, e.g., /usr/local/wine-0.9.44 and another in /usr/local/wine-0.9.42, setting PATH and LD_LIBRARY_PATH correctly ensures that wine-0.9.44 will find its librairies, not those of wine-0.9.42.
> gymn...@gmail.com wrote: > > So, would wineprefix be something like this? wineprefix=/home/ > > <username>/Wine0944
> WINEPREFIX (all caps) tells wine where to look for system.reg (the > equivalent of the Windows registry).
> > And I don't understand what LD_LIBRARY_PATH is. If that means the > > libraries that Wine needs, I just let it find and use what's on my > > system. Do I have to simlink them all or something? I still don't > > quite understand.
> When you configure wine, and you don't give it --prefix, 'make install' will > put the programs in /usr/local/bin and the librairies and dlls in > /usr/local/lib; these locations are standard, so you don't need to put them > in your PATH or LD_LIBRARY_PATH.
> However, if you configure wine with
> ./configure --prefix=/some/dir
> then make and make install, the programs will go in /some/dir/bin, and the > librairies and dlls in /some/dir/lib; these locations are non-standard, so > Linux doesn't find them, except if you add them to your PATH and > LD_LIBRARY_PATH:
> That way, Linux will look for programs in your old PATH (this is what $PATH > stands for) and in /some/dir/bin; same things for the librairies.
> If you have installed one version of wine in, e.g., /usr/local/wine-0.9.44 > and another in /usr/local/wine-0.9.42, setting PATH and LD_LIBRARY_PATH > correctly ensures that wine-0.9.44 will find its librairies, not those of > wine-0.9.42.
> I hope it's clearer :^)
> -- > Fabrice DELENTE
Thanks for your answer. So I just did this (from within the new wine's directory): export WINEPREFIX=/home/<user>/.wine-0.9.44 So now, if I run winecfg from within the new wine's directory (0.9.44) it should not mess up the old wine, am I right? The new wine has its own /bin /include /lib and /share directories.
I also just discovered /usr/lib/wine and /usr/share/wine folders on my system. I've also noticed that my system has wine libraries in /usr/ bin and /usr/lib
Whose libraries am I exporting, the new wine's or the old wine's?
Would it be: export PATH=/new/wine/programstuff:old/wine's/bin export LD_LIBRARY_PATH=/new/wine/libraries:old/wine's/lib?
> Thanks for your answer. > So I just did this (from within the new wine's directory): export > WINEPREFIX=/home/<user>/.wine-0.9.44 > So now, if I run winecfg from within the new wine's directory (0.9.44) > it should not mess up the old wine, am I right? The new wine has its > own /bin /include /lib and /share directories.
That's write. You should have a symbolic link in your wine directory that should point to ./tools/winewrapper; this wrapper takes care for you to set PATH and LD_LIBRARY_PATH correctly.
> I also just discovered /usr/lib/wine and /usr/share/wine folders on my > system. I've also noticed that my system has wine libraries in /usr/ > bin and /usr/lib
These should be from previous installs of wine, maybe from the package-manager you use for your distro.
> Whose libraries am I exporting, the new wine's or the old wine's?
You must export those for the version of wine you want to use.
> Would it be: export PATH=/new/wine/programstuff:old/wine's/bin > export LD_LIBRARY_PATH=/new/wine/libraries:old/wine's/lib?
Then when you want to start program foo, the shell will try to find it in /usr/local/mydir/bin, then in /usr/sbin, then in /usr/local/bin and finally in /bin.
The first one it finds is executed, and the shell does not search in the remaining folders.
So if you have two versions of program foo, one in /usr/sbin and one in /usr/local/bin, only /usr/sbin/foo will ever be executed; the one in /usr/local/bin can be run only if you give its full path to the shell, or if you remove the one there is in /usr/sbin, or if you put /usr/local/bin before /usr/sbin in your PATH.
LD_LIBRARY_PATH works exactly the same way, but for libraries instead of programs.
> And how would I install stuff to the NEW wine?
In the directory pointed to by $WINEPREFIX, you should have a dosdevices directory. In that directory, there is a c: links that points to anywhere you wish; this is the virtual hard-drive that wine will use to install programs to.
> I hope I'm starting to understand this stuff.
Will to learn, practice and experiment are the best ways :^)
So I did these commands from a terminal (I was just in my home directory not anywhere else) export LD_LIBRARY_PATH=/some/dir/lib:$LD_LIBRARY_PATH export PATH=/some/dir/bin:$PATH The program and library paths I typed where for the new version of wine. But each time, I'm not sure if anything happened. How do I know if it did anything? Or do I have to be in some wine directory for this to work?
gymn...@gmail.com wrote: > So I did these commands from a terminal (I was just in my home > directory not anywhere else) > export LD_LIBRARY_PATH=/some/dir/lib:$LD_LIBRARY_PATH > export PATH=/some/dir/bin:$PATH > The program and library paths I typed where for the new version of > wine. > But each time, I'm not sure if anything happened. How do I know if it > did anything?
Why aren't you sure it worked? What do you see in the terminal after you type 'wine'? What do you get with 'wine --version'?
> Or do I have to be in some wine directory for this to work?
> gymn...@gmail.com wrote: > > So I did these commands from a terminal (I was just in my home > > directory not anywhere else) > > export LD_LIBRARY_PATH=/some/dir/lib:$LD_LIBRARY_PATH > > export PATH=/some/dir/bin:$PATH > > The program and library paths I typed where for the new version of > > wine. > > But each time, I'm not sure if anything happened. How do I know if it > > did anything?
> Why aren't you sure it worked? What do you see in the terminal after you > type 'wine'? What do you get with 'wine --version'?
> > Or do I have to be in some wine directory for this to work?
> No, you don't, you can start wine from anywhere.
> -- > Fabrice DELENTE
After I typed those library paths commands I just got the <username>@linux:~> prompt and that was it. When I type, wine --version, I get the old version (0.9.12)
You can start either version of wine from anywhere? How?
> gymn...@gmail.com wrote: > > So I did these commands from a terminal (I was just in my home > > directory not anywhere else) > > export LD_LIBRARY_PATH=/some/dir/lib:$LD_LIBRARY_PATH > > export PATH=/some/dir/bin:$PATH > > The program and library paths I typed where for the new version of > > wine. > > But each time, I'm not sure if anything happened. How do I know if it > > did anything?
> Why aren't you sure it worked? What do you see in the terminal after you > type 'wine'? What do you get with 'wine --version'?
> > Or do I have to be in some wine directory for this to work?
> No, you don't, you can start wine from anywhere.
> -- > Fabrice DELENTE
P.S. this is what happens in the terminal after I just type, wine:
Usage: wine PROGRAM [ARGUMENTS...] Run the specified program wine --help Display this help and exit wine --version Output version information and exit
> After I typed those library paths commands I just got the > <username>@linux:~> prompt and that was it.
That's normal. The export commands only modify PATH and LD_LIBRARY_PATH, that's all. They won't start any command (wine or other).
> When I type, wine --version, I get the old version (0.9.12)
Strange. In what directories are located the various versions of wine you want to use (i.e. when you configured them, what was the --prefix you gave to configure)?
> You can start either version of wine from anywhere? How?
You can start any version of wine if you have first set PATH and LD_LIBRARY_PATH so that this version will be found first, before the other versions.
gymnart <ses...@yahoo.com> wrote: > P.S. this is what happens in the terminal after I just type, wine:
> Usage: wine PROGRAM [ARGUMENTS...] Run the specified program > wine --help Display this help and exit > wine --version Output version information and > exit
That's the correct output, I was interested in wine --version; I should have proofread before posting :^)
> gymnart <ses...@yahoo.com> wrote: > > P.S. this is what happens in the terminal after I just type, wine:
> > Usage: wine PROGRAM [ARGUMENTS...] Run the specified program > > wine --help Display this help and exit > > wine --version Output version information and > > exit
> That's the correct output, I was interested in wine --version; I should have > proofread before posting :^)
> -- > Fabrice DELENTE
This is the command I used to compile the new wine (from source): ./configure --prefix=/home/<username>/Wine0944
The older wine is where the .rpm put it (/usr/bin/wine, /usr/lib/ wine, /usr/share/wine).
If this were working properly, would both versions have shown up when I typed: wine --version ?
> The older wine is where the .rpm put it (/usr/bin/wine, /usr/lib/ > wine, /usr/share/wine). > If this were working properly, would both versions have shown up when > I typed: wine --version ?
No, only one wine will be executed; I didn't point out that your PATH and LD_LIBRARY_PATH are modified only in the terminal you typed it, not everywhere, maybe that was the cause for the error.
To be sure, you can see how PATH and LD_LIBRARY_PATH are set by typing
> gymnart <ses...@yahoo.com> wrote: >> This is the command I used to compile the new wine (from source): >> ./configure --prefix=/home/<username>/Wine0944
> Then to use it you have to type in your terminal: (the $ at the beginning of > the line is the terminal prompt)
>> The older wine is where the .rpm put it (/usr/bin/wine, /usr/lib/ >> wine, /usr/share/wine).
>> If this were working properly, would both versions have shown up when >> I typed: wine --version ?
> No, only one wine will be executed; I didn't point out that your PATH and > LD_LIBRARY_PATH are modified only in the terminal you typed it, not > everywhere, maybe that was the cause for the error.
> To be sure, you can see how PATH and LD_LIBRARY_PATH are set by typing
> $ echo $PATH
> in your terminal.
At the risk of being repetitious in an attempt help solve the difficulties that seem to continue...
If you are compiling from source, you do _NOT_ need to even install Wine. You can run it from the area where you compiled it. Just run 'wine' in the directory where you compiled it. That file is a symlink to a script, and it is there for the purpose of running Wine prior to (or without) installing. You don't have to mess with environment variables or anything of that like.
(I just used that method to run several different versions to compare behavior of a certain issue.)
-- Robert Riches spamtra...@verizon.net (Yes, that is one of my email addresses.)
Robert M. Riches Jr. <spamtra...@verizon.net> wrote:
> At the risk of being repetitious in an attempt help solve > the difficulties that seem to continue...
> If you are compiling from source, you do _NOT_ need to even > install Wine. You can run it from the area where you > compiled it. Just run 'wine' in the directory where you > compiled it. That file is a symlink to a script, and it is > there for the purpose of running Wine prior to (or without) > installing. You don't have to mess with environment > variables or anything of that like.
> (I just used that method to run several different versions > to compare behavior of a certain issue.)
Yes, I know, but learning environment variables can be useful in many other cases :^)
> At the risk of being repetitious in an attempt help solve > the difficulties that seem to continue...
> If you are compiling from source, you do _NOT_ need to even > install Wine. You can run it from the area where you > compiled it. Just run 'wine' in the directory where you > compiled it. That file is a symlink to a script, and it is > there for the purpose of running Wine prior to (or without) > installing. You don't have to mess with environment > variables or anything of that like.
> (I just used that method to run several different versions > to compare behavior of a certain issue.)
> -- > Robert Riches > spamtra...@verizon.net > (Yes, that is one of my email addresses.)
> gymnart <ses...@yahoo.com> wrote: > > This is the command I used to compile the new wine (from source): > > ./configure --prefix=/home/<username>/Wine0944
> Then to use it you have to type in your terminal: (the $ at the beginning of > the line is the terminal prompt)
> > The older wine is where the .rpm put it (/usr/bin/wine, /usr/lib/ > > wine, /usr/share/wine). > > If this were working properly, would both versions have shown up when > > I typed: wine --version ?
> No, only one wine will be executed; I didn't point out that your PATH and > LD_LIBRARY_PATH are modified only in the terminal you typed it, not > everywhere, maybe that was the cause for the error.
> To be sure, you can see how PATH and LD_LIBRARY_PATH are set by typing
> $ echo $PATH
> in your terminal.
> -- > Fabrice DELENTE
That worked, now it shows 0.9.44 being used.
I just ran the new wine's wordpad from the command line for the fun of it and that worked. That experimenting was kinda fun.
So I have to set the path and library each time I want to run the new wine? I'm asking because after I closed the terminal and then reopened it again and did the wine --version, it gave me the older 0.9.12.
If I got this right, when I want to run the new wine's cfg, I will have to do the export path and ldlibrary again before I run it, right?
gymnart <ses...@yahoo.com> wrote: > That worked, now it shows 0.9.44 being used.
> I just ran the new wine's wordpad from the command line for the fun of > it and that worked. That experimenting was kinda fun.
> So I have to set the path and library each time I want to run the new > wine? I'm asking because after I closed the terminal and then reopened > it again and did the wine --version, it gave me the older 0.9.12.
Yes, PATH and LD_LIBRARY_PATH are only changed for the terminal you typed them in; they aren't changed in any other terminal.
> If I got this right, when I want to run the new wine's cfg, I will > have to do the export path and ldlibrary again before I run it, right?
Yes, and to avoid typing you can do it in a shell script: for example
-- cut here ------------------------------------------------------------------- #!/bin/sh