python3.4가 gi를 가져오지 못했습니다.

python3.4가 gi를 가져오지 못했습니다.

나는 Mint17.02에 gi를 설치하기 위해 여러 가지 방법을 시도했습니다.

zen@zen:~ > sudo pip3 install gi
zen@zen:~ > sudo python3.4 -m pip install gi
Requirement already satisfied (use --upgrade to upgrade): gi in /usr/local/lib/python3.4/site-packages
Requirement already satisfied (use --upgrade to upgrade): requests in /usr/local/lib/python3.4/site-packages (from gi)

zen@zen:~ > sudo python3.4
Python 3.4.3 (default, Sep  2 2015, 01:05:11) 
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import gi
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.4/site-packages/gi/__init__.py", line 39
    print url
            ^
SyntaxError: Missing parentheses in call to 'print'

답변1

자신만의 Python을 컴파일한 것 같습니다(내 Linux Mint 17.2의 기본 Python3.4는 3.4.0이므로 gi해당 설치에서 프로그램을 실행하는 가장 쉬운 방법은 패키지를 설치 python3-gi하고 gi 디렉토리를 lib/python3.4/site-packages사용자 디렉토리에 심볼릭 링크하는 것입니다). 컴파일된 파이썬.

site-packages디렉토리로 이동하여 이 작업을 수행 할 수 있습니다.3.4.3다음을 설치하고 수행하십시오.

ln -s $(    /usr/bin/python3 -c "import os, gi; print(os.path.dirname(gi.__file__))") .

virtualenvs 및/또는 tox를 사용하는 경우 개발하는 패키지가 내 패키지에 종속되도록 만드는 것을 고려해야 합니다.ruamel.venvgtk설치 시 이러한 링크를 설정합니다(python2와 함께 pip를 사용하는 경우 gtk에 대한 링크 포함).

답변2

내 기본 OS에서 발생했으며 python3을 gi에서 가져왔고 해당 오류로 인해 실패 redshift-gtk하기 때문에 더 이상 부팅되지 않습니다 ./usr/local/lib/python3.5/dist-packagesprint url

pip3을 사용하여 gi를 제거하면 문제가 해결되었습니다.

$ sudo pip3 uninstall gi

그 시점부터 python3은 "올바른" gi를 가져옵니다.

관련 정보