[SOLVED] Wine 3.0.3/CentOS 7.5 - run 32 bit Windows programs???
Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Wine 3.0.3/CentOS 7.5 - run 32 bit Windows programs???
I am currently running an OLD 32 bit version of Wine on CentOS 7.4. I built it 2 or 3 years ago with the help from members of this and other forums. I cannot upgrade to CentOS 7.5 because of a dependency issue
I note that wine 3.0.1 is now available in epel (I installed it on a test machine yesterday from epel-testing - looks like it has been promoted). It installed with no apparent issues.
Using the same version of wine on Ubuntu Mate 18.04 I can create a 32 bit environment by deleting the default ~/.wine directory, issuing the command export WINEARCH=win32 and then running winecfg. This produces a ~/.wine structure compatible with 32 bit programs. If I try the same on my newly built CentOS 7.5 install with wine 3.0.1 I get
Code:
[ken@taylor15 Desktop]$ export WINEARCH=win32
[ken@taylor15 Desktop]$ winecfg
wine: created the configuration directory '/home/ken/.wine'
wine: '/home/ken/.wine' is a 32-bit installation, it cannot support 64-bit applications.
~/.wine is created but is empty. I tried WINEPREFIX=~/.wine32 winecfg and it simply created an empty ~./wine32. Same error message.
My searching has turned up a lot of information about wine on Ubuntu - which works, OLD and irrelevant stuff about building 32 bit wine on CentOS 7 and a bunch of FUD from WineHQ claiming that there is no such thing as 32 bit in CentOS7. The last claims were branded BS on the CentOS forum when I asked some years ago and I HAVE been running 32 bit programs under wine on CentOS 7 for years.
Bottom line... I cannot update my production workstation due to the dependency issue shown above. I cannot exclude the offending library/package as that breaks a lot of other updates.
What I need to learn is:
1 - Is it possible to run 32 bit programs in wine 3.0.1 on CentOS 7
2 - If so, how?
I moved to CentOS 6 back in 2010 when Ubuntu 10.04 would not support my dual monitor, separate X screens configuration. CentOS 7 dos not support it either but I have developed a VMWare based replacement. I really like CentOS but I am getting frustrated and depressed. I am tempted to chuck it all and move back to Ubuntu
I have been to the referenced page before. I played with wine 2.x a while back. I had it installed on Ubuntu 16.04 from a ppa as I recall. I though it fixed a bizarre issue I have with Visual Foxpro 6 on CentOS 7. After an update or two the issue returned.
I tried building Wine 3 on CentOS 7.5 a couple of days ago. I kept tripping over more and more missing dependencies. I finally installed everything I found ...devel.i686 in the repos. I managed to configure, make and make install. I did not do much testing as I need to install it on several machines and wanted to build an rpm package.
I have used rpmbuild by a command such as rpmbuild -ba programname.spec. However, there were more than 700 .spec files in the wine source tree. I tried rpmbuild -ba programname.tar.gz. That failed on "line 1" I had located a bug report re. installing the epel wine 3.0.1 package on CentOS 7.5 and from the epel mailing list it appeared that there was a proposed fix in epel-testing. That installed on a fresh CentOS 7.5 machine just fine.
I do not know if it is supposed to have 32 bit capability. Perhaps I will build a Fedora virtual machine and install the Fedora wine 3 package and see what I can do.
I sure want to get wine 3 running as it seems to correct the issue I have with pseudo compiling programs in Visual Foxpro. It worked fine in CentOS 6 with wine 1.8.x. Same wine version on CentOS 7 and it does not work. I have a CentOS 6 virtual machine build just in case I need to change a Foxpro program. They run on CentOS 7 but I cannot change them. What a bummer. I have been using xBase since 1983 (dBase II on an Osborne - CP/M).
Let me start downloading a Fedora iso.
Thanks again,
Ken
I meant to say epel mailing list. Perhaps I will post a short question there. Those folks are very busy and I hate to bother them.
Distribution: Scientific Linux 6, Scientific Linux 7 (with Mate))
Posts: 17
Rep:
You can try this Wine 3.0.1 32-bit assembly, which I compiled from .src.rpm for the i686 architecture.
But on some computers, it can produce an error when trying to open a file from Windows programs. The reason for this I have not yet found out. If this happens on your computer, then you can try the 32-bit version of Wine 2.0.3 that I re-compiled with the updated dependency libgphoto2_port.so.12. All the necessary 32-bit dependency packages are inside the archives.
Do not forget to remove all the packages of the previous Wine assembly at first!
Good luck!
Where did you find the .src.rpm for the i686 version? I am starting with the source from winehq.org. It does not seem to have different architectures. Everything is in one big pile - at least that is what I have found so far.
Distribution: Scientific Linux 6, Scientific Linux 7 (with Mate))
Posts: 17
Rep:
Quote:
Originally Posted by taylorkh
Than you yes1111,
Where did you find the .src.rpm for the i686 version? I am starting with the source from winehq.org. It does not seem to have different architectures. Everything is in one big pile - at least that is what I have found so far.
Ken
.src.rpm is the same for both .x86_64 and .i686 versions. You can find it on EPEL, for example. And then you should use rpmbuild with --target=i686 key.
I figured the epel source repo right after I submitted my question. I was only working on my first cup of coffee this morning
My experience with building from source and creating rpms is very limited. I build wine 1.7.x from source and into rpms several years ago by following some detailed instructions. I have no idea how I did it and could probably not do it again. I have build gnome-commander and created installation rpms so I am learning a little more.
Let me grab the source rpm from epel and try the -target-i686 key (after some man page study).
Distribution: Scientific Linux 6, Scientific Linux 7 (with Mate))
Posts: 17
Rep:
Don't mention it taylorkh!
Glad to help you. You can simply take ready to use suitable i686 rpms from my archives and try it.
But if you want to build it from .src.rpm with rpmbuild, you'd better use the edited file wine.spec from my archive, and then use the command:
I took your spec file and updated the version to 3.0.1. I seem to be having a compiler issue. I tried ./configure from the actual source to see if that gave me more info. I found
Code:
checking whether gcc -m32 works... no
configure: error: Cannot build a 32-bit program, you need to install 32-bit development libraries.
gcc -m32 is SUPPOSED to work according to my searches for "32 - bit development libraries." I have found references to the libraries for Ubuntu (gcc-multilib but nothing for CentOS7.
I found a bunch of recommended packages here https://wiki.winehq.org/Fedora so I shoved them onto my development machine - at least most of them which were available. configure ran successfully and I have been running make for quite a while. I think I should have run "PKG_CONFIG_PATH=/usr/lib/pkgconfig CC="ccache gcc -m32" ./configure" per the link above. If the plain make works I will try it. Then go back to the rpmbuild.
Thanks once more. I found the necessary pieces and have managed to build from source and install. I ran
Code:
export WINEARCH=win32
winecfg
wine Grabit175b.exe
and installed a 32 bit Windoze program
I am now back to the rpmbuild.
Quote:
configure: error: libdbus 32-bit development files not found, no dynamic device support.
This is an error since --with-dbus was requested.
error: Bad exit status from /var/tmp/rpm-tmp.V4Uhin (%build)
where wine.spec.yes is YOUR file. I have not found the desired development files so I changed line 693 in wine.spec.yes to --without-dbus. Now it is rocking and rolling until...
Code:
Processing files: wine-3.0.1-1.el7.centos.i686
Provides: wine = 3.0.1-1.el7.centos wine(x86-32) = 3.0.1-1.el7.centos
Requires(rpmlib): rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(CompressedFileNames) <= 3.0.4-1
Processing files: wine-core-3.0.1-1.el7.centos.i686
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/winegstreamer.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_0.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_1.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_2.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_3.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_4.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_5.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_6.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_7.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xapofx1_1.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xapofx1_2.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xapofx1_3.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xapofx1_4.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xapofx1_5.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_0.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_1.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_2.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_3.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_4.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_5.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_6.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_7.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_8.dll.so
error: File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_9.dll.so
Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.jMO93Z
+ umask 022
+ cd /home/ken/rpmbuild/BUILD
+ cd wine-3.0.1
+ DOCDIR=/home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/share/doc/wine-core-3.0.1
+ export DOCDIR
+ /usr/bin/mkdir -p /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/share/doc/wine-core-3.0.1
+ cp -pr ANNOUNCE /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/share/doc/wine-core-3.0.1
+ cp -pr COPYING.LIB /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/share/doc/wine-core-3.0.1
+ cp -pr LICENSE /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/share/doc/wine-core-3.0.1
+ cp -pr LICENSE.OLD /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/share/doc/wine-core-3.0.1
+ cp -pr AUTHORS /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/share/doc/wine-core-3.0.1
+ cp -pr README-FEDORA /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/share/doc/wine-core-3.0.1
+ cp -pr README /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/share/doc/wine-core-3.0.1
+ cp -pr VERSION /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/share/doc/wine-core-3.0.1
+ cp -pr documentation/README.de documentation/README.es documentation/README.fi documentation/README.fr documentation/README.hu documentation/README.it documentation/README.ja documentation/README.ko documentation/README.no documentation/README.pt documentation/README.pt_br documentation/README.ru documentation/README.sv documentation/README.tr documentation/README.uk documentation/README.zh_cn /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/share/doc/wine-core-3.0.1
+ exit 0
RPM build errors:
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/winegstreamer.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_0.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_1.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_2.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_3.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_4.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_5.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_6.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/x3daudio1_7.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xapofx1_1.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xapofx1_2.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xapofx1_3.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xapofx1_4.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xapofx1_5.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_0.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_1.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_2.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_3.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_4.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_5.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_6.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_7.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_8.dll.so
File not found: /home/ken/rpmbuild/BUILDROOT/wine-3.0.1-1.el7.centos.i386/usr/lib/wine/xaudio2_9.dll.so
[ken@vmCentOS75Wine Desktop]$
I went back to the winehq/fedora page and grabbed a second bunch of packages and installed what could be found. Trying the rpmbuild again.
For my wine purposes I do not need sound so I may try and comment out sound references in the spec file if I did not manage to install the necessary packages.
Distribution: Scientific Linux 6, Scientific Linux 7 (with Mate))
Posts: 17
Rep:
Would you like to look into /DEPS folder inside any of my archives? You can found a lot of interesting things including development files there. And it may be helpful.
P.S. I'll try to build fresh i686 version derived from the latest EPEL .src.rpm using rpmbuild. But I'll make it a few hours later.
I have stopped for the moment trying to build my own rpms and am getting ready to try installing your rpms on a newly built CentOS 7 test machine. When I installed my old wine 1.8.x a couple of years ago I recall putting all the rpms in one directory and issuing a yum localinstall *. Will that work with your rpms?
I find it interesting that the epel wine3.0.1 rpm is a SINGLE file which would imply that all of the subordinate packages are in their repo.
Update: I just tried locallinstall on ALL of your packages and received
I have CentOS-Base, epel and epel-testing repos enabled.
On the epel mailing list I asked and was told was told
Quote:
> I installed the wine 3 package from epel-testing this morning on a
> newly installed CentOS 7.5 machine. The installation seemed to go fine.
> If I may ask...
>
> Does this version of wine support 32 bit Windows programs on CentOS 7.5?
No. rhel7 (and epel7 by extension) does not support i686 arch, which is
required for win32 support
That would not seem to be correct.
If you are willing to try building it again - THANK YOU - I would be honored to test the results.
Ken
p.s. I am going to take a break from rpm building on CentOS and see if I can figure out how to build a gnome-commander .deb for my temporary substitute Ubuntu Mate 18.04 virtual machine which has wine3.0.1 and will run my three critical Windoze programs until I get CentOS 7.5 sorted out.
I have stopped for the moment trying to build my own rpms and am getting ready to try installing your rpms on a newly built CentOS 7 test machine. When I installed my old wine 1.8.x a couple of years ago I recall putting all the rpms in one directory and issuing a yum localinstall *. Will that work with your rpms?
I didn't try localistall but simply
Code:
# yum install *.rpm
only. As result default installation path is /usr/lib/wine
Quote:
Originally Posted by taylorkh
Update: I just tried locallinstall on ALL of your packages and received
I have CentOS-Base, epel and epel-testing repos enabled.
On the epel mailing list I asked and was told was told That would not seem to be correct.
File compat-hal-info-20090716-5.el7.noarch.rpm is in the /DEPS/noarch folder of my archive. Install it simultaneously with other compat-hal-*.i686.rpm and compat-hal-*.x86_64.rpm files that are in respective folders (compat-hal-0.5.14-14.el7.i686.rpm compat-hal-devel-0.5.14-14.el7.i686.rpm compat-hal-libs-0.5.14-14.el7.i686.rpm compat-hal-0.5.14-14.el7.x86_64.rpm compat-hal-devel-0.5.14-14.el7.x86_64.rpm compat-hal-libs-0.5.14-14.el7.x86_64.rpm compat-hal-storage-addon-0.5.14-14.el7.x86_64.rpm). The best way, I suppose, is to copy all files from /DEPS/i686, /DEPS/noarch and /DEPS/x86_64 folders into one temporary folder: /home/<username>/wineinstall for example. Then you should cd into this folder as root and type:
Code:
# yum install *.rpm
This will install all necessary deps for your Wine at once. Some of these files I've built from respective .src.rpms.
Quote:
Originally Posted by taylorkh
If you are willing to try building it again - THANK YOU - I would be honored to test the results.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.