yerel ubuntu üzerinde FAF (ubuntu üzerinde QtWebKit 17.04+)


11

FAF'ı (doğal olarak) FA ile birlikte çalıştırmaya çalışıyorum (şarapla)

(bu yazının aldığı görüşler ve yöntemlerin ne kadar güncellendiği nedeniyle, bu soruyu cevaplamak ve sormak için güncellemeye karar verdim. python istemcisi ve eski kılavuzlar)


Beta durum Java İstemcisi:

resim açıklamasını buraya girin

bu betiği kullan: (güncellendi 3/12/2019)

https://github.com/tatsujb/installFAFscript

https://www.youtube.com/watch?v=BEWUEoQ8Q4k


Python istemcisi: (ŞİMDİ OBSOLETE)

çalışma FAF

Nasıl yapılır: Kaynaktan bu python uygulamasını (FAF) derleme :

@edwinksl'in "PyQt5 ile Python 3" kılavuzu sayesinde çalışır durumda. onu çözüm olarak işaretledi. aferin!

Güncelleme (31/1/2018)

Maalesef bu yayını güncellemek çok uzun sürdü. 7000 kez izlendi! gerçekten güncel bilgileri hak ediyor.

Sorduğumdan beri çok şey oldu. FAF artık az çok linux desteğine sahip. yüklemeleri için bir wiki bile var (ve dağıtım başına!):

https://wiki.faforever.com/index.php?title=Setting_Up_FAF_Linux#Debian.2FUbuntu

ihtiyaçlarınızı karşılaması garanti edilmez, daha fazlasını şu adreste bulabilirsiniz: http://forums.faforever.com/viewtopic.php?f=2&t=4507

şu anda wiki o kadar da güncel değil.

bir süre yerel python ile çalıştırmak için faf alabilirsiniz, hiçbir sanalenv gerekli ama QT'nin değişen bağımlılıkları ve paket kompozisyon yanı sıra bunların FAF kullanımı yine kırdı ... geçici olarak umarım!

Şahsen çalıştığımdan eminim ve solace sunmak için buradayım (adım 6 ve 7'yi atlamayı deneyin, önce gereksiz olabilirler):

  1. Bazı önkoşulları yükleyin: sudo apt update && sudo apt install wget PyQt5.QtMultimedia python3-idna python3-semantic-version python3-pyqt5 python3-pyqt5.qtwebengine
  2. cd Downloads && wget https://github.com/FAForever/client/archive/0.16.1.tar.gz(veya hangisinin en son sürüm https://github.com/FAForever/client/releases/ )
  3. özü (bu örnek için eve çıkaracağım) ( cd Downloads/ && mv client-0.16.1.tar.gz ~/ && cd && tar -zxf client-0.16.1.tar.gz && mv client-0.16.1 faf-client && rm client-0.16.1.tar.gz)
  4. cd fafclient/ : çalışma dizinine git
  5. sed -i 1,1d requirements.txt : cxFreeze'i gereksinimlerden kaldırır (zorunlu değildir ve derlemeyi öldürür)
  6. virtualenv -p python3 faf
  7. pip install -r requirements.txt
  8. sudo wget https://github.com/FAForever/uid/releases/download/v4.0.5/faf-uid -O /usr/bin/faf-uid: giriş ikili dosyasını indirir ve: sudo chmod +x /usr/bin/faf-uidfaf tarafından yürütülmesine izin verir.
  9. touch res/RELEASE-VERSION && echo "0.16.1" >> res/RELEASE-VERSION : faf'un son gereksinimini karşılar: bir yayın sürümü dosyası.

şimdi koşmalı ama heck için bir koşucu yapalım:

touch FAF.sh
echo "#! /bin/bash" >> FAF.sh
echo "cd /home/t/faf-client" >> FAF.sh
echo "python3 src/__main__.py" >> FAF.sh
chmod +x FAF.sh

sonra ./FAF.shFAF'ı çalıştırın.

Şerefe!


Bkz. Wiki.qt.io/Building_Qt_5_from_Git . Hâlâ bir sorununuz varsa, doğrudan qtwebkit destekleyicileriyle iletişim kurun.
Panther

t@tsu:~$ sudo apt-get build-dep qt5-default Reading package lists... Done E: You must put some 'source' URIs in your sources.list
tatsu

Yani kaynak uri'yi
Panther

2
@tatsu QtWebKit'i çalıştırmayı başardım ama FAF oyunum yok, bu yüzden bu çalışmaları tam olarak doğrulayamıyorum. Tartışabilmemiz için bir sohbet odası kurmaya çalışayım.
edwinksl

2
@tatsu Bu arada bir cevap yazdım. Bir deneyin ve yardımcı olup olmadığını görün.
edwinksl

Yanıtlar:


4

Not: PyQt5 ile Python 3 adımlarının işe yaradığı, PyQt4 ve PySide ile Python 2 adımlarının hala deneysel olduğu kanıtlanmıştır.

PyQt5 ile Python 3 (işe yaradığı kanıtlandı)

Anlaşılmaktadır 474-feature-py3FAForever / istemci GitHub depo dalı QtWebKit içeren PyQt5 ile Python 3 kullanır. Bu nedenle, bu dalı kullanmak en basit çözümdür. PyQt5'in (ancak PyQt4'ün değil) yüklenebileceğini unutmayın pip, böylece işleri daha kolay hale getirir.

PyQt5 ile Python 3 için adımlar:

  1. cdolacak seçtiğiniz bir dizine, içine ~/Desktop/tempbu cevabı, yazma amacıyla git cloneFAForever / istemci GitHub depo ve şube:git checkout474-feature-py3

    mkdir ~/Desktop/temp
    cd ~/Desktop/temp
    git clone https://github.com/FAForever/client.git faf-client
    cd faf-client
    git checkout 474-feature-py3
    
  2. Python 3 için bir sanal ağ oluşturun ve etkinleştirin (varsayılan, Ubuntu 17.04 için Python 3.5) ve pipgüncel olduğundan emin olmak için yükseltmeyi zorlayın :

    virtualenv venv -p python3  # replace python3 with python3.6 if you want to use Python 3.6 instead
    source venv/bin/activate
    pip install -U --force-reinstall pip
    
  3. Kullan pipyüklemek PyQt5ve gelen requirements.txt:

    pip install PyQt5
    pip install -r requirements.txt
    
  4. faf-uidİkili faf-client/libdosyaya indirin ve çalıştırılabilir yapın:

    wget https://github.com/FAForever/uid/releases/download/v4.0.4/faf-uid -O lib/faf-uid
    chmod +x lib/faf-uid
    
  5. Run pythonüzerinde src/__main__.py:

    python src/__main__.py
    

PyQt4 ve PySide ile Python 2 (deneysel)

QtWebKitModülün nasıl içe aktarılacağını anladım gibi görünüyor , ancak FAF oyunu yüklü değil, bu yüzden bunun çalıştığını tam olarak doğrulayamıyorum ve bu nedenle bu cevap devam eden bir çalışma.

Özetle, ben kullanılan aptyüklemeye python-qt4gelmez ki, değil sahip QtWebKitmodülü. --system-site-packagesSeçeneği kullanmadan bir virtualenv oluşturdum ve etkinleştirdim ve modülün bulunduğu pipyükleme için kullandım . Daha sonra sanal sisteme PyQt4 için uygun sistem kitaplıklarını ve dosyalarını işaretledim. Sonra modülü almak için birkaç değişiklik yaptım . Bu çözüm, https://stackoverflow.com/a/28850104/486919 , https://stackoverflow.com/a/36887302/486919 ve https://stackoverflow.com/a/37616466/486919 adresinden esinlenmiştir .PySideQtWebKitfaf-client/srcQtWebKitPySide

Adımlar:

  1. Kurulum python-qt4:

    sudo apt update
    sudo apt install python-qt4
    
  2. cdolacak seçtiğiniz bir dizine, içine ~/Desktop/temp, bu cevabı yazarken amacıyla git clonedepo ve benim versiyonunu dalı:git checkoutpatch

    mkdir ~/Desktop/temp
    cd ~/Desktop/temp
    git clone https://github.com/edwinksl/client.git faf-client
    cd faf-client
    git checkout patch
    

    Bu patchdal varsayılan kıyasla bazı ek kaydedilmesini sahiptir develop1) için sürüm şartname kurtulmak alır: dalı cx_Freezeben kullanılırsa bana yükleme sorunlarını veriyordu, 4.3.4önceden belirtilen bir versiyon, ve 2) ithal ettiği QtWebKitdan PySideyerine PyQt4.

  3. Python 2 için bir sanal ağ oluşturun ve etkinleştirin ve pipgüncel olduğundan emin olmak için yükseltmeye zorlayın :

    virtualenv venv
    source venv/bin/activate
    pip install -U --force-reinstall pip
    
  4. Kullan pipyüklemek PySideve gelen requirements.txt:

    pip install PySide
    pip install -r requirements.txt
    
  5. faf-uidİkili faf-client/libdosyaya indirin ve çalıştırılabilir yapın:

    wget https://github.com/FAForever/uid/releases/download/v4.0.4/faf-uid -O lib/faf-uid
    chmod +x lib/faf-uid
    
  6. cdiçin site-packagesVirtualenv ve marka uygun sembolik içeride dizinde:

    cd venv/lib/python2.7/site-packages
    ln -s /usr/lib/python2.7/dist-packages/PyQt4/ .
    ln -s /usr/lib/python2.7/dist-packages/sip.x86_64-linux-gnu.so .
    

    Not .her sembolik bağ sonunda.

  7. cdgeri faf-clientve çalıştırma pythonüzerinde src/__main__.py:

    cd -  # this goes back to previous directory, which should be ~/Desktop/temp/faf-client
    python src/__main__.py
    

ilk kapalı teşekkür ederim! ve üzgünüm kuyruğu kaçırdım. Hastaneye kaldırıldım. Resolving deltas: 100% (8873/8873), done. t@tsu:~/Desktop/temp$ git checkout patch fatal: Not a git repository (or any of the parent directories): .git t@tsu:~/Desktop/temp$ git init Initialized empty Git repository in /home/t/Desktop/temp/.git/ t@tsu:~/Desktop/temp$ git checkout patch error: pathspec 'patch' did not match any file(s) known to git.
Şurada

@tatsu Benim hatam. Sen gerek cdiçine faf-client, sonra yapmak dizinde git checkout patch.
edwinksl

@edwinskl yup !! ve cd bittiğinde!
tatsu

hemen sonra @edwinskl pip install -r faf-client/requirements.txt ekledim wget https://github.com/FAForever/uid/releases/download/v4.0.4/faf-uid -O ./faf-client/lib/faf-uid ve chmod +x ./faf-client/lib/faf-uiddaha sonra yaptığımız cd ./faf-client && ../venv/bin/python src/__main__.py : Ben ile benim metni oluşturdu orijinal öğretici forum sonrası uyarınca forums.faforever.com/... FAF ishal bbut hala bir hata günlüğü ile.
tatsu

@tatsu Düzenleme önermekten çekinmeyin! Sonuçta ben yokken oyun yüklü ...
edwinksl

1

~/.bashrcPython sürüm geçersiz kılma olup olmadığını kontrol edin

Derlemek istediğiniz paket Python sürüm 2.7.x gerektirir. Bunu şu komutlarla onaylayın:

$ python
Python 2.7.12 (default, Nov 19 2016, 06:48:10) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import PyQt4
>>> print PyQt4.__path__
['/usr/lib/python2.7/dist-packages/PyQt4']
>>> 

Bu soru-cevaptaki sorun buydu .

linux error PyQt4 import QtWebKitGoogle arama ile yalnız değilsiniz :

Maalesef orada çok fazla google sonuçlarıdır ama okumanız için inanıyorum bu çok yakından ilgilendiren ise ilk öneri başarmak etmez.


teşekkür ederim ama anlamıyorum ya da ne ben değilim emin değilim ama (ben inanıyorum) python2 yerel olarak yüklemek zorunda değil yardımcı sanalenv kullanıyorum. verilen bir şey ile karıştırmak python3 hakkında endişelenmenize gerek olmadığı göz önüne alındığında. Tamamen burada işareti kaçırırsam beni
düzelt
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.