Wine önekimin 32 bit mi yoksa 64 bit mi olduğunu nasıl kontrol edebilirim?


16

32 bit önek oluşturmayı açıklayan tonlarca iş parçacığı gördüm, ancak kullandığım ön ekin 32 bit mi yoksa 64 bit mi olduğunu kontrol etmek istiyorum. Sormamın nedeni PlayOnLinux kullanıyorum ve 32 bitlik bir sanal sürücü (örneğin X) oluşturdum. Şimdi ~ / .PlayOnLinux / wineprefix klasöründe winetricks açtığımda wineprefix bana mesaj veriyor

64 bit WINEPREFIX kullanıyorsunuz. Sorunla karşılaşırsanız, bir hata bildirmeden önce lütfen 32 bitlik temiz bir WINEPREFIX'i tekrar test edin.

Ancak, ~ / .PlayOnLinux / wineprefix / X içinde wineprefix'i açtığımda, mesaj görünmedi.

Ön ekin 32 vs 64 bit olup olmadığını nasıl kontrol edebilirim?

Yanıtlar:


5

PlayOnLinux kullanıyorsanız, GUI - PlayOnLinux'u kullanarak hangi sürümü kontrol edebilir, ilgili programda 'Yapılandır'ı tıklayabilir ve soldaki bölmeye bakabilirsiniz:

Alternatif olarak, winetricks'in ne yaptığını yapabilirsiniz (versiyonda 20140817, hat 3600 dolaylarında) , şarap ön düzeltmesini WINEPREFIX/drive_c/windows/syswow6464bit windows / wineprefix'de bulunmalı, ancak 32bit sürümlerinde bulunmamalıdır. Bu sıradan şarap ön düzeltmeleri ve PlayOnLinux altındakiler için çalışmalıdır.


5

Tek yapmanız gereken PlayonLinux'un Sanal Disklerine göz atmak. WINEPREFIX / drive_c / klasörüne gidin ve Program Files klasörünü arayın.

Yalnızca Program Dosyalarını görürseniz ve hiçbir ProgramDosyası (x86) görmüyorsanız, 32 bit Şarap Öneki kullanıyorsunuz demektir. Her ikisini de görürseniz 64 Bit Wine Prefix kullanıyorsunuz. Bu yardımcı olur umarım !!


Bu doğru değil. Ben sadece öneki bir x86 dizini olmadan oluşturulan bir durum vardı ama drive_c / windows / syswow64 içerdiği gerçeği ile gösterildiği gibi 64-bit oldu.
Duncan X Simpson

4

Bir betikte benzer bir şeye ihtiyacım vardı bu yüzden bu betiği @ wilf'ın cevabına göre yaptım:

#!/bin/bash

## Wine can spam stderr
ERRLOG=/tmp/dllerrlog.log

WINESYSDIR=$( winepath -u c:\\windows\\system32 2> $ERRLOG )    
if [[ ${WINESYSDIR} == *"/system32" ]]; then
  echo "Prefix is 32 bit"
  # do 32 bit stuff here...
elif [[ ${WINESYSDIR} == *"/syswow64"* ]]; then
  echo "Prefix is 64 bit"
  # do 64 bit stuff here...
else
  echo "Unknown wine architecture"
fi

Ve işte bazı çıktılar:

$ ./winearch.sh 
Prefix is 64 bit

Ve 32 bit şarap önekinde var:

$ WINEPREFIX=~/.wine32 ./winearch.sh 
Prefix is 32 bit

1

Winetricks kurabilir ve bunu terminale yazabilirsiniz:

 sudo apt-get install winetricks

ve sonra winetricks çalıştırın ve daha sonra tercihinize göre görebilirsiniz.


1
Winetricks çalıştırdığımda, "tercih" seçeneği yok.
Organik Mermer

Tercih yok.
Karl Morrison

1


@ Wilf sayesinde içindir 'WINEPREFIX / drive_c / windows / SysWOW64' .. (çalışır)
ama düzenleme edilmiş şarap kayıt açığa herhangi bir giriş bulmak için
sistemi (win32 veya win64) kullandığını winearch ne ve ben bulduk içeri:

cat /root/.wine/system.reg | grep -m 1 '#arch' | cut -d '=' -f2

Bu komut şunu gösterir: win32 (32 bit) veya win64 (64 bit)




Komut dosyalarında bunu nasıl kullanacağına dair bir örnek aşağıdadır:

  #!/bin/sh
  HkLm=$(cat /root/.wine/system.reg | grep -m 1 '#arch' | cut -d '=' -f2) > /dev/null 2>&1 # winearch (regedit)
  if [ "$HkLm" = "win64" ]; then
    echo "[x] winearch config: $HkLm (64 bits)"
    echo "[i] Please run:$IPATH/bin/enable_x32bits_wine.sh"
    exit
  fi

Nihai notlar: i Kali linux bu test ettik ..
eğer WINEPREFIX = / root / .wine32 sonra kedi komut o dizini içermelidir
regedit winearch ayarları için iç klasörü okumak mümkün.


1
Şarabı kök olarak çalıştırmamalısınız, bu yüzden belki ~/.wineyerine kullanın/root/.wine
Olivier G
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.