2012-12-08 78 views
10

我試圖做到這一點:
Build 32bit on 64 bit Linux using an automake configure script?
不爲我工作:( Compileing酒,我發現這一點的config.log:不能建立在64位的Linux 32位葡萄酒

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; 
| } 

配置失敗:Cannot build a 32-bit program, you need to install 32-bit development libraries.

回答

1

不要做葡萄酒建立了32位在默認情況下,即使在64位系統(因爲它必須運行32位Windows程序)。它還建立了一個64如果你想禁用,配置它w第i:

./configure --disable-win64
+0

感謝您的回答,但仍然無法正常工作。我編輯了我的問題並添加了終端輸出。你認爲我應該安裝哪些庫? – m93a

+0

@ m93a對於所有Wine依賴項,您需要32位開發庫。像libalsa,mesa,x11等等。我不知道完整的列表。 –

2

什麼工作在一定程度上爲我在Debian喘息:

dpkg --add-architecture i386 
apt-get update 

從I386回購使安裝

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

在拖動32位庫。我實際上仍然遇到X庫的問題:

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. 

但它在技術上是可選的。

1

你可以解決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 

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 

讓我過去的X誤差。

1

我想你使用的是現在支持多架構的Ubuntu x64。換句話說,在64位系統上,您只能構建Wine-x64版本。在Ubuntu 12.04 x64上構建32bit Wine似乎就像現在一樣。

所以只需運行:

./configure --enable-win64 
7

要構建64位機上32位的酒,你可以使用LXC(Linux的容器),這是運行多個獨立的Linux的操作系統級虛擬化環境系統。到目前爲止,這是最簡單的解決方案,因爲Linux(如Ubuntu或Debian)使得構建32位wine變得困難,因爲64位系統沒有配備完整的32位開發庫(請參閱:Bug #990982)。

所以基本方法編譯32位和64位的葡萄酒是:

  1. 生成64位葡萄酒
  2. 構建32位工具LXC
  3. 構建32位的葡萄酒在lxc中,指的是64位wine和32位工具1。建在前面的步驟
  4. 安裝32位的葡萄酒
  5. 安裝64位的葡萄酒

在頁面Building Biarch (Shared WoW64) Wine On Ubuntu我們可以閱讀以下說明:

  1. 安裝64位先決條件:

    sudo apt-get update 
    sudo apt-get build-dep wine 
    
  2. 構建64位酒:

    mkdir $HOME/wine64 
    cd $HOME/wine64 
    ../wine-git/configure --enable-win64 
    make -j4 
    
  3. 安裝LXC:

    sudo apt-get install lxc 
    
  4. 在 容器創建一個名爲32位的集裝箱 「my32bitbox」 使用的是Ubuntu 模板,並結合你的主目錄爲/ home目錄:

    sudo lxc-create -t ubuntu -n my32bitbox -- --bindhome $LOGNAME -a i386 
    
  5. 將apt配置從主機複製到lxc容器:

    sudo cp -R /etc/apt /var/lib/lxc/my32bitbox/rootfs/etc 
    
  6. 啓動容器;在控制檯登錄提示時,它會給你,用你的用戶名和密碼登錄 。

    sudo lxc-start -n my32bitbox 
    
  7. 現在,您位於容器內部,位於您的真實主目錄中。如果您 不在容器(你沒有及時 用戶名@ my32bitbox),然後打開一個新的終端:

    sudo lxc-attach -n my32bitbox 
    login yourusername+password 
    
  8. 現在,你是在容器中。爲了得到這些工具,做一個像Wine一樣的樹形結構作爲 正常。您必須首先安裝所有需要的 先決條件。例如:

    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. 仍在容器內,再做一次,這一次指向 64位構建數據,32位工具構建工具:

    mkdir $HOME/wine32 
    cd $HOME/wine32 
    ~/wine-git/configure --with-wine64=$HOME/wine64 --with-wine-tools=$HOME/wine32-tools 
    make -j4 
    
  10. 仍在容器內,安裝32位的葡萄酒,以部隊建設的 最後一點:

    cd $HOME/wine32 
    sudo make install 
    
  11. 儘管仍然在容器內,將其關閉:

    sudo shutdown -h now 
    

    這滴你回去到你的真機。接下來,您需要 刪除所有現有的Wine包。您可以從命令 一行執行此操作,但使用aptitude或GUI 程序包管理工具可能更容易。您需要葡萄酒單,葡萄酒壁虎,和 可選葡萄酒酒釀酒的編譯版本。但是,這些軟件包可能取決於現有的葡萄酒安裝,其中 可能會強制您將其刪除。

  12. 安裝新構建的酒到你的真機:

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

    警告:當您安裝葡萄酒的當地建造的版本, 包管理系統將不知道,因爲它沒有 進來它的存在從一個包裝。因此,稍後可能會破壞它的 依賴關係,或者在沒有來自包管理工具的 警告的情況下安裝衝突版本的葡萄酒。您可以通過 創建程序包或通過設置封裝的「引腳優先級:-1」來阻止與 apt-pinning相沖突的程序包。

  13. 接下來,安裝Mono,Gecko和可選的酒窖,如果您不得不 因爲依賴衝突酒 包而刪除其包裝。

注意:上述許多命令都需要root權限。您的用戶帳戶需要通過sudo訪問root,或者您需要切換到用戶帳戶。

+0

配置不找到32中的wine-tools – zardilior