2012-12-08 10 views
10

Próbuję to zrobić:
Build 32bit on 64 bit Linux using an automake configure script?
Nie działa dla mnie :( Compileing wino Znalazłem to w config.log.Nie można zbudować 32-bitowego na 64-bitowym systemie Linux Wine

configure: failed program was: 
| /* confdefs.h */ 
| #define PACKAGE_NAME "Wine" 
| #define PACKAGE_TARNAME "wine" 
| #define PACKAGE_VERSION "1.5.19" 
| #define PACKAGE_STRING "Wine 1.5.19" 
| #define PACKAGE_BUGREPORT "[email protected]" 
| #define PACKAGE_URL "http://www.winehq.org" 
| /* end confdefs.h. */ 
| 
| int 
| main() 
| { 
| 
| ; 
| return 0; 
| } 

konfiguracja nie powiedzie się z:. Cannot build a 32-bit program, you need to install 32-bit development libraries.

Odpowiedz

1

nie rób tego wina opiera się na 32-bit domyślnie nawet na systemach 64-bitowych (ponieważ musi uruchomić 32-bitowe programy systemu Windows.) buduje również 64- Trochę wina w tym samym czasie .Jeśli chcesz wyłączyć to, skonfiguruj go w ith:

./configure --disable-win64
+0

Dzięki za odpowiedź, ale nadal nie działa. Zmieniłem moje pytanie i dodałem wyjście terminalu. Jakie biblioteki uważasz, że powinienem zainstalować? – m93a

+0

@ m93a Potrzebujesz 32-bitowych bibliotek programistycznych dla wszystkich zależności Wine. Podobnie jak libalsa, mesa, x11 i wiele innych. Nie znam pełnej listy. –

2

Co działało do pewnego stopnia dla mnie na Debian wheezy:

dpkg --add-architecture i386 
apt-get update 

aby umożliwić instalację z i386 repo

apt-get install ia32-libs libc6-dev-i386 lib32z1-dev lib32bz2-dev 

w utknąć 32-bitowe biblioteki. Wciąż mam problemy z X-libami:

configure: error: X 32-bit development files not found. Wine will be built 
without X support, which probably isn't what you want. You will need 
to install 32-bit development packages of Xlib/Xfree86 at the very least. 
Use the --without-x option if you really want this. 

, ale jest to opcjonalne z technicznego punktu widzenia.

1

można rozwiązać błędu X:

sudo apt-get install xorg-dev 
10
apt-get install gcc-multilib libasound2-dev:i386 libgsm1-dev:i386 libjpeg8-dev:i386 liblcms2-dev:i386 libldap2-dev:i386 libmpg123-dev:i386 libopenal-dev:i386 libv4l-dev:i386 libx11-dev:i386 libxinerama-dev:i386 libxml2-dev:i386 zlib1g-dev:i386 

i

apt-get install libcapi20-dev:i386 libcups2:i386 libdbus-1-3:i386 libfontconfig:i386 libfreetype6:i386 libglu1-mesa:i386 libgnutls26:i386 libgphoto2-2:i386 libncurses5:i386 libosmesa6:i386 libsane:i386 libxcomposite1:i386 libxcursor1:i386 libxi6:i386 libxrandr2:i386 libxslt1.1:i386 ocl-icd-libopencl1:i386 

got me przeszłość X błędu.

1

Podejrzewam, że korzystasz z Ubuntu x64, które obsługuje teraz wiele architektur. Innymi słowy w 64-bitowym systemie możesz zbudować tylko wersję Wine-x64. Budowanie 32-bitowego Wine na Ubuntu 12.04 x64 wydaje się jak na razie kłopotliwe.

Więc po prostu uruchom:

./configure --enable-win64 
7

Aby zbudować 32-bitowe wino na 64-bitowym komputerze, można użyć lxc (Linux kontenerach), które jest środowiskiem wirtualizacji operacyjnego na poziomie systemu do uruchamiania wielu odizolowanych Linux systemy. To najprostsze rozwiązanie do tej pory, ponieważ Linux (taki jak Ubuntu lub Debian) sprawia, że ​​budowanie 32-bitowego wina jest trudne, ponieważ 64-bitowy system nie jest wyposażony w pełny zestaw 32-bitowych bibliotek programistycznych (patrz: Bug #990982).

Dlatego podstawowe podejście do kompilowania zarówno 32-bitowe i 64-bitowe wino jest:

  1. Budowa 64-bitowy wino
  2. budowanie narzędzia 32-bitowe w lxc
  3. budowy 32-bitowym wina w lxc, odnosząc się do 64-bitowego wina i narzędzi 32-bitowych 1.zbudowany w poprzednich krokach
  4. zainstalować 32-bitową wino
  5. zainstalować 64-bitową wino

Na stronie Building Biarch (Shared WoW64) Wine On Ubuntu możemy przeczytać następujące instrukcje:

  1. zainstalować 64-bitowy Wymagania wstępne:

    sudo apt-get update 
    sudo apt-get build-dep wine 
    
  2. Zbuduj wino 64-bitowe:

    mkdir $HOME/wine64 
    cd $HOME/wine64 
    ../wine-git/configure --enable-win64 
    make -j4 
    
  3. Install lxc:

    sudo apt-get install lxc 
    
  4. utworzyć kontener 32-bit o nazwie "my32bitbox" za pomocą szablonu Ubuntu i związać swoją główna katalogu do katalogu/home w pojemniku :

    sudo lxc-create -t ubuntu -n my32bitbox -- --bindhome $LOGNAME -a i386 
    
  5. Skopiuj konfigurację apt z hosta do kontenera LXC:

    sudo cp -R /etc/apt /var/lib/lxc/my32bitbox/rootfs/etc 
    
  6. Uruchom kontener; przy pytaniu logowania do konsoli da ci to, log z twoją nazwą użytkownika i hasłem.

    sudo lxc-start -n my32bitbox 
    
  7. Teraz jesteś wewnątrz pojemnika, w normalnym katalogu domowym. Jeśli nie są w pojemniku (nie masz szybkiego nazwa_użytkownika @ my32bitbox), a następnie otworzyć nowy terminal i:

    sudo lxc-attach -n my32bitbox 
    login yourusername+password 
    
  8. Teraz jesteś w pojemniku. Wykonaj "Wino" z drzewka jako normalne, aby uzyskać narzędzia. Najpierw musisz zainstalować wszystkie potrzebne wymagania wstępne: . Na przykład:

    sudo apt-get update 
    sudo apt-get install python-software-properties git-core 
    sudo apt-get build-dep wine 
    mkdir $HOME/wine32-tools 
    cd $HOME/wine32-tools 
    ~/wine-git/configure 
    make -j4 
    
  9. Wciąż wewnątrz pojemnika, zrób to jeszcze raz, tym razem wskazując na 64-bit budować danych oraz narzędzia 32-bitowe budowania narzędzi:

    mkdir $HOME/wine32 
    cd $HOME/wine32 
    ~/wine-git/configure --with-wine64=$HOME/wine64 --with-wine-tools=$HOME/wine32-tools 
    make -j4 
    
  10. Wciąż wewnątrz pojemnika, należy zainstalować 32-bitową wino zmusić ostatni trochę budynku:

    cd $HOME/wine32 
    sudo make install 
    
  11. Będąc nadal w kontenerze, wyłącz go:

    sudo shutdown -h now 
    

    Powoduje to powrót do rzeczywistej maszyny. Następnie musisz usunąć wszystkie istniejące pakiety Wine. Możesz to zrobić z linii poleceń: , ale prawdopodobnie jest to łatwiejsze dzięki aptitude lub jednym z narzędzi do zarządzania pakietami GUI .Będziesz potrzebował wine-mono, wine-gecko i opcjonalnie winetricks dla swojej skompilowanej wersji wina. Jednak te pakiety mogą zależeć od istniejącej instalacji winiarskiej, która może zmusić do ich usunięcia.

  12. Zainstalować nowo zbudowany wina do swojej prawdziwej maszyny:

    cd $HOME/wine32 
    sudo make install 
    cd $HOME/wine64 
    sudo make install 
    

    Ostrzeżenie: Podczas instalowania lokalnie zbudowany wersji Wine, system zarządzania pakiet nie będzie wiedzieć, że istnieje, ponieważ nie przychodzą z paczki. W ten sposób możliwe jest późniejsze złamanie zależności lub zainstalowanie sprzecznej wersji wina bez ostrzeżenia z narzędzi do zarządzania pakietami. Możesz temu zapobiec, tworząc , tworząc pakiet lub blokując pakiety będące w konflikcie z apt-pinning ustawiając "Pin-Priority: -1" dla pakietów.

  13. Następnie zainstaluj Mono, Gecko i opcjonalnie winetricks, jeśli musisz usunąć z pakietów ze względu na zależność od kolidującego pakietu wina .

Uwaga: Wiele z powyższych poleceń wymaga uprawnień użytkownika root. Twoje konto użytkownika musi mieć dostęp do konta root przez sudo lub musisz przełączyć się na konto użytkownika.

+0

configure nie znajduje narzędzi do wina w 32 – zardilior

Powiązane problemy