Встановлення Wine 1.5: configure: error: Неможливо створити 32-бітну програму, вам потрібно встановити 32-бітні бібліотеки розробки


32
    Wine Installer v1.0

Warning !! wine binary (still) found, which may indicate
a (conflicting) previous installation.
You might want to abort and uninstall Wine first.
(If you previously tried to install from source manually, 
run 'make uninstall' from the wine root directory)

We need to install Wine as the root user. Do you want us to build Wine,
'su root' and install Wine?  Enter 'no' to build Wine without installing:
(yes/no) yes
Running configure...

checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for cpp... cpp
checking whether gcc -m32 works... no
configure: error: Cannot build a 32-bit program, you need to install 32-bit development libraries.

Configure failed, aborting install.

Як виправити цю проблему?

Відповіді:


30

Я думаю, ви використовуєте Ubuntu 12.04 x64, який тепер підтримує мульти-архітектуру. Іншими словами, на 64-бітній системі ви можете побудувати лише версію Wine-x64. Створення 32-бітного вина на Ubuntu 12.04 x64 здається занадто глючним, як і зараз.

Тому просто запустіть цю команду:

./configure --enable-win64

6
Хіба це не будує вино64 замість вина? Я не можу запускати Windows 32-бітні програми з wine64.
Готьє

1
Сьогодні вино вимагає flexі bisonтак по- sudo apt install flex bisonперше, але так, це найкраща відповідь.
тацу

19

Відповідно до: https://stackoverflow.com/a/17748092/108802

Потрібно встановити gcc-multilibs.

sudo apt-get install gcc-multilib g++-multilib

Потім [...] уточнюйте 32-бітний хост і передаючи 32-бітні прапори компіляції:

./configure --host=i686-linux-gnu "CFLAGS=-m32" "CXXFLAGS=-m32" "LDFLAGS=-m32"

У моєму випадку це все-таки призвело до знищення 32-бітових залежностей, які apt відмовився встановлювати. Я думаю, що було б менше боліти, щоб встановити віртуальну машину Linux для компіляції 32-бітних речей.
Хубро

1
Це краща відповідь, оскільки іноді wine64 не в змозі запустити 32-розрядні програми
Брендон Куценський

3

спробуйте встановити залежність 32 біт

sudo apt-get install ia32-libs
sudo apt-get install gcc-multilib g++-multilib
sudo apt-get install xserver-xorg-dev:i386 libfreetype6-dev:i386

0

Я можу зробити інсталяцію Linux "RedHat 6.4" після установки деяких пакетів, таких як gcc, gcc-c ++, flex, bison тощо.

із запуском нижче:

./configure --enable-win64 --without-freetype

make

wine notepad++.exe

5
і чи працює це в Ubuntu?
Брайам

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.