우분투의 기본 FAF (우분투의 QtWebKit 17.04+)


11

FA와 함께 FAF를 실행하려고합니다 (와인을 통해)

(이 게시물이받은 견해와 메소드가 얼마나 많이 업데이트되었는지에 따라이 질문에 대답하고 질문하기 위해이 질문을 업데이트하기로 결정했습니다.이 게시물의 개정 내역을 확인하여 이전 메소드를 실행하는 오래된 메소드를 찾는 프로세스 파이썬 클라이언트와 이전 가이드)


베타 상태 Java 클라이언트 :

여기에 이미지 설명을 입력하십시오

이 스크립트를 사용하십시오 : (2019 년 3 월 12 일 업데이트 됨)

https://github.com/tatsujb/installFAFscript

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


파이썬 클라이언트 : (지금 OBSOLETE)

FAF 작업

방법 : 이 Python 앱 (FAF)을 소스에서 컴파일 하십시오 .

@edwinksl의 "PyQt5가 포함 된 Python 3"안내서 덕분에 시작 및 실행됩니다. 그를 해결책으로 표시했습니다. 잘 했어!

업데이트 (2018 년 1 월 31 일)

이 게시물을 업데이트하는 데 시간이 오래 걸렸습니다. 그것은 7000 전망을 얻었다! 실제로 최신 정보가 필요합니다.

내가 많은 질문을했기 때문에. FAF는 이제 리눅스를 지원합니다. 그들은 심지어 설치에 대한 위키를 가지고 있습니다 (그리고 배포판 당!) :

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

그것은 당신의 요구에 맞는 것을 보장하지는 않습니다. 더 자세한 내용은 다음 사이트를 참조하십시오.

현재 위키는 최신 버전이 아닙니다.

잠시 동안 나는 네이티브 파이썬으로 faf를 실행할 수 있었지만 virtualenv가 필요하지 않았지만 QT의 평균적인 의존성 및 패키지 구성과 FAF 사용이 다시 깨졌습니다. 일시적으로 희망합니다!

개인적으로 실행 중이며 위안을 제공하기 위해 여기에 있습니다 (6 및 7 단계를 건너 뛰십시오. 필요하지 않을 수도 있습니다).

  1. 전제 조건을 설치하십시오. 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(또는 https://github.com/FAForever/client/releases/의 최신 릴리스 )
  3. 추출 (이 예에서는 집으로 추출) ( 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/ : 작업 디렉토리로 이동
  5. sed -i 1,1d requirements.txt : 요구 사항에서 cxFreeze를 제거합니다 (필요하지 않으며 컴파일을 종료합니다)
  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: 로그인 바이너리를 다운로드하고 : sudo chmod +x /usr/bin/faf-uidfaf로 실행할 수 있습니다.
  9. touch res/RELEASE-VERSION && echo "0.16.1" >> res/RELEASE-VERSION : faf의 최종 요구 사항을 충족합니다. 릴리스 버전 파일.

이제 실행해야하지만 도대체 러너를 만들어 봅시다.

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

그런 다음 ./FAF.shFAF를 실행하십시오.

건배!


wiki.qt.io/Building_Qt_5_from_Git를 참조하십시오 . 여전히 문제가있는 경우 qtwebkit 관리자에게 직접 문의하십시오.
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


2
@tatsu QtWebKit을 작동시킬 수 있다고 생각했지만 FAF 게임이 없으므로이 작동을 완전히 확인할 수 없습니다. 토론 할 수 있도록 대화방을 설정해 보겠습니다.
edwinksl

2
@tatsu 한편 나는 대답을 썼다. 시도해보고 도움이되는지 확인하십시오.
edwinksl

답변:


4

참고 : PyQt5가있는 Python 3의 단계는 작동하는 것으로 입증되었지만 PyQt4 및 PySide가있는 Python 2의 단계는 여전히 실험적입니다.

PyQt5가있는 Python 3 (작동하는 것으로 입증 됨)

474-feature-py3FAForever / client GitHub 리포지토리 의 분기는 PtQt5와 함께 Python 3을 사용하며 QtWebKit이 포함되어 있습니다. 따라서이 분기를 사용하는 것이 가장 간단한 솔루션입니다. PyQt5 (PyQt4는 아님)를 실제로 함께 설치할 수 pip있으므로보다 편리합니다.

PyQt5가 포함 된 Python 3의 단계 :

  1. cd될 것입니다 당신의 선택의 디렉토리로 ~/Desktop/temp이 답변 쓰기의 목적을 위해 git cloneFAForever / 클라이언트 GitHub의 저장소 및 지점 :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 (기본은 Ubuntu 17.04의 Python 3.5)에 대한 virtualenv를 작성하고 활성화하고 pip최신 상태인지 확인하기 위해 강제 업그레이드 하십시오.

    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. pip설치 PyQt5및 사용 requirements.txt:

    pip install PyQt5
    pip install -r requirements.txt
    
  4. faf-uid바이너리를 다운로드하여 faf-client/lib실행 파일 로 만드십시오.

    wget https://github.com/FAForever/uid/releases/download/v4.0.4/faf-uid -O lib/faf-uid
    chmod +x lib/faf-uid
    
  5. 실행 pythonsrc/__main__.py:

    python src/__main__.py
    

PyQt4 및 PySide가 포함 된 Python 2 (실험)

QtWebKit모듈 을 가져 오는 방법을 알아 냈을 수도 있지만 FAF 게임이 설치되어 있지 않으므로 이것이 작동하는지 완전히 확인할 수 없으므로이 답변이 진행중인 작업입니다.

간단히 말해서, 내가 사용 apt설치할 python-qt4않는, 하지QtWebKit모듈을. --system-site-packages옵션을 사용 하지 않고 virtualenv를 작성하고 활성화 했으며 모듈 이있는 pipinstall을 사용 했습니다 . 그런 다음 PyQt4에 대한 적절한 시스템 라이브러리 및 파일을 virtualenv에 심볼릭 링크했습니다. 그런 다음 에서 모듈 을 가져 오기 위해 몇 가지 사항을 변경했습니다 . 이 솔루션은 /programming//a/28850104/486919 , /programming//a/36887302/486919/programming//a/37616466/486919 에서 영감을 얻었습니다 .PySideQtWebKitfaf-client/srcQtWebKitPySide

단계 :

  1. 설치 python-qt4:

    sudo apt update
    sudo apt install python-qt4
    
  2. cd될 것입니다 당신의 선택의 디렉토리로 ~/Desktop/temp,이 답변을 작성하는 목적 git clone저장소와의 나의 버전 지점 :git checkoutpatch

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

    patch지점은 기본에 비해 몇 가지 추가 커밋이 develop1)가에 대한 버전 사양을 제거 가져옵니다 가지 cx_Freeze내가 사용 된 경우 나에게 설치 문제를주고 있었다, 4.3.4이전에 지정된 버전, 2)는 수입 QtWebKit에서 PySide대신을 PyQt4.

  3. Python 2 용 virtualenv를 작성하고 활성화 한 후 최신 버전으로 업그레이드 pip하십시오.

    virtualenv venv
    source venv/bin/activate
    pip install -U --force-reinstall pip
    
  4. pip설치 PySide및 사용 requirements.txt:

    pip install PySide
    pip install -r requirements.txt
    
  5. faf-uid바이너리를 다운로드하여 faf-client/lib실행 파일 로 만드십시오.

    wget https://github.com/FAForever/uid/releases/download/v4.0.4/faf-uid -O lib/faf-uid
    chmod +x lib/faf-uid
    
  6. cdsite-packagesvirtualenv 내부 의 디렉토리에 적절한 심볼릭 링크를 만듭니다.

    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 .
    

    .각 심볼릭 링크의 끝에 유의하십시오 .

  7. cd다시 faf-client실행 pythonsrc/__main__.py:

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

먼저 감사합니다! 대기열을 놓쳐서 죄송합니다. 나는 입원했다. 나는 붙어있다 :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.
tatsu

@tatsu 내 나쁜. 먼저 디렉토리 에 cd들어가야합니다 . faf-clientgit checkout patch
edwinksl

트윗 담아 가기 그리고 일단 완료되면 CD를 백업하십시오!
tatsu

@edwinskl pip install -r faf-client/requirements.txt 내가 추가 한 다음 원래 자습서 포럼 게시물에 따라 다음 wget https://github.com/FAForever/uid/releases/download/v4.0.4/faf-uid -O ./faf-client/lib/faf-uid 과 같이 스크립트를 작성했습니다. forums.faforever.com/… FAF는 여전히 오류 로그와 함께 여전히 실행됩니다. chmod +x ./faf-client/lib/faf-uidcd ./faf-client && ../venv/bin/python src/__main__.py
tatsu

@tatsu 편집을 제안하십시오! 내가하지 않는 동안 결국 당신은 게임을 설치했습니다 ...
edwinksl

1

~/.bashrcPython 버전 재정의 확인

컴파일하려는 패키지에는 Python 버전 2.7.x가 필요합니다. 다음 명령으로 확인하십시오 :

$ 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']
>>> 

이것이이 Q & A 의 문제였습니다 .

당신은 linux error PyQt4 import QtWebKit구글 검색 혼자가 아닙니다 :

불행하게도이 많게 구글 결과 그러나 당신이 읽을 내가 믿는 이들은 가장 관련있는 경우 첫 번째 추천 밖으로 이동하지 않습니다.


고맙지 만 이해하지 못하는 사람인지 또는 무엇을 모르지만 virtualenv를 사용하고 있는지 확실하지 않습니다. 나는 python2를 로컬로 설치할 필요가 없습니다. python3이 아무것도 방해하지 않아도 걱정할 필요가 없습니다. 내가 여기에 표시를 완전히 놓친 경우 수정
tatsu
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.