如何为 anaconda python3 安装 gi 模块?
How to install gi module for anaconda python3?
python3
是我的本地 Anaconda 版本 python,而 python3.4
是系统版本。我可以使用 python3.4
导入 gi
模块(可能是因为我使用 sudo apt-get install python3-gi
安装它)但是 python3
看不到它:
$ python3 -c 'import gi'
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named 'gi'
$ python3.4 -c 'import gi'
$ python3 --version
Python 3.5.1 :: Anaconda 4.0.0 (64-bit)
$ python3.4 --version
Python 3.4.3
$ which python3
/home/kossak/anaconda3/bin/python3
$ which python3.4
/usr/bin/python3.4
$
我应该如何为 Anaconda python 安装 gi
?或者也许我可以以某种方式导入系统范围的模块?
我的os:
System: Kernel: 3.19.0-32-generic x86_64 (64 bit gcc: 4.8.2) Desktop: Cinnamon 2.8.8 (Gtk 2.24.23) dm: mdm
Distro: Linux Mint 17.3 Rosa
这就是您的做法:(Linux Mint 和 python3 的示例)
首先使用您的发行包管理器安装 gi
模块。对于 Linux Mint,它将是:
sudo apt-get install python3-gi
然后运行你的发行版python检查模块所在的位置:
$ /usr/bin/python3
Python 3.5.2 (default, Sep 10 2016, 08:21:44)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import gi
>>> print(gi)
<module 'gi' from '/usr/lib/python3/dist-packages/gi/__init__.py'>
所以在我的例子中,模块 gi
安装到 /usr/lib/python3/dist-packages/gi
。假设您在 /home/kossak/anaconda3
中安装了 anaconda,请在适当的文件夹中创建一个 link 到 gi 模块:
ln -s /usr/lib/python3/dist-packages/gi /home/kossak/anaconda3/lib/python3.5/site-packages/
如果你有 conda 虚拟环境并希望 gi
模块在那里可用,路径应该有点不同。假设虚拟环境称为 TEST:
ln -s /usr/lib/python3/dist-packages/gi /home/kossak/anaconda3/envs/TEST/lib/python3.5/site-packages/
有效:
$ python3
Python 3.5.2 |Anaconda custom (64-bit)| (default, Jul 2 2016, 17:53:06)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import gi
>>>
如果您在 python-3 上使用 conda virtualenv,您可以使用
$ conda install -c conda-forge pygobject
在你的虚拟环境中
您可以在以下位置阅读更多相关信息:
https://anaconda.org/conda-forge/pygobject
对我来说
conda install -c pkgw/label/superseded gtk3
工作
如果您想在 Linux anaconda 环境中执行正确的安装(没有软链接)。请记住,如果您之前没有安装 gcc,错误可能会有所不同(我假设它是在我发布时默认安装的,但并不是每个人都这样做)。 如果你不太清楚自己在做什么,请安装它以避免误解
创建或打开您的 conda 环境。
尝试安装 pygobject(别担心,它很可能会抛出错误):
pip install pygobject
在linux中会提示正常的安装进度然后报错:
(...) Please, try executing the following in your system:
sudo apt install libgirepository1.0-dev
根据您的操作系统或安装的依赖项,命令名称或包名称可能会有所不同。只需按照说明操作并允许系统安装您的数据包。此步骤不会改变任何内容,只是为您提供系统所需软件包的准确信息。 如果您在 Windows 上 运行 这个,它会要求您安装特定版本的 Visual Studio。如果您在 Windows,请从 MS 网站下载所需的 Visual Studio,安装它,重新启动您的计算机并转到第 5 步(在我的情况下,我从不需要 windows 中的第 4 步,但是,我不是 MS 专家。
关闭您的 conda 环境
conda deactivate
接下来,您需要在您的 conda 环境中从 conda-forge 存储库安装 pygobject。您可以将 repo 添加到您最喜欢的 conda 包管理器,或者简单地 运行 以下命令作为 root(成为 root 很重要)。我是在项目外做的,你可以在项目内做:
conda install -c conda-forge pygobject
在我的例子中,conda 不在路径中。我已经安装在:
/opt/anaconda3/bin/
您可以 运行 普通用户的以下命令来找出 conda 的位置:
which conda
开启conda环境
source activate <your env name>
或者对应的anaconda activate语法(我没用过所以记不太清了)
重复第一步安装不会失败:
pip install pygobject
或者如果你特别想安装 gi,你可以 运行:
pip install pgi
正确的包裹是 "pgi" 不是 "gi"
由于 gi 是 pygobject 的依赖项,因此一切都会正确安装。你可以通过运行ning
查看
python
>>> import gi
您可能会发现以下内容对 Windows 很有用,尽管您可能需要稍微解决一下:
GStreammer python bindings on Windows
python3
是我的本地 Anaconda 版本 python,而 python3.4
是系统版本。我可以使用 python3.4
导入 gi
模块(可能是因为我使用 sudo apt-get install python3-gi
安装它)但是 python3
看不到它:
$ python3 -c 'import gi'
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named 'gi'
$ python3.4 -c 'import gi'
$ python3 --version
Python 3.5.1 :: Anaconda 4.0.0 (64-bit)
$ python3.4 --version
Python 3.4.3
$ which python3
/home/kossak/anaconda3/bin/python3
$ which python3.4
/usr/bin/python3.4
$
我应该如何为 Anaconda python 安装 gi
?或者也许我可以以某种方式导入系统范围的模块?
我的os:
System: Kernel: 3.19.0-32-generic x86_64 (64 bit gcc: 4.8.2) Desktop: Cinnamon 2.8.8 (Gtk 2.24.23) dm: mdm
Distro: Linux Mint 17.3 Rosa
这就是您的做法:(Linux Mint 和 python3 的示例)
首先使用您的发行包管理器安装 gi
模块。对于 Linux Mint,它将是:
sudo apt-get install python3-gi
然后运行你的发行版python检查模块所在的位置:
$ /usr/bin/python3
Python 3.5.2 (default, Sep 10 2016, 08:21:44)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import gi
>>> print(gi)
<module 'gi' from '/usr/lib/python3/dist-packages/gi/__init__.py'>
所以在我的例子中,模块 gi
安装到 /usr/lib/python3/dist-packages/gi
。假设您在 /home/kossak/anaconda3
中安装了 anaconda,请在适当的文件夹中创建一个 link 到 gi 模块:
ln -s /usr/lib/python3/dist-packages/gi /home/kossak/anaconda3/lib/python3.5/site-packages/
如果你有 conda 虚拟环境并希望 gi
模块在那里可用,路径应该有点不同。假设虚拟环境称为 TEST:
ln -s /usr/lib/python3/dist-packages/gi /home/kossak/anaconda3/envs/TEST/lib/python3.5/site-packages/
有效:
$ python3
Python 3.5.2 |Anaconda custom (64-bit)| (default, Jul 2 2016, 17:53:06)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import gi
>>>
如果您在 python-3 上使用 conda virtualenv,您可以使用
$ conda install -c conda-forge pygobject
在你的虚拟环境中
您可以在以下位置阅读更多相关信息: https://anaconda.org/conda-forge/pygobject
对我来说
conda install -c pkgw/label/superseded gtk3
工作
如果您想在 Linux anaconda 环境中执行正确的安装(没有软链接)。请记住,如果您之前没有安装 gcc,错误可能会有所不同(我假设它是在我发布时默认安装的,但并不是每个人都这样做)。 如果你不太清楚自己在做什么,请安装它以避免误解
创建或打开您的 conda 环境。
尝试安装 pygobject(别担心,它很可能会抛出错误):
pip install pygobject
在linux中会提示正常的安装进度然后报错:
(...) Please, try executing the following in your system: sudo apt install libgirepository1.0-dev
根据您的操作系统或安装的依赖项,命令名称或包名称可能会有所不同。只需按照说明操作并允许系统安装您的数据包。此步骤不会改变任何内容,只是为您提供系统所需软件包的准确信息。 如果您在 Windows 上 运行 这个,它会要求您安装特定版本的 Visual Studio。如果您在 Windows,请从 MS 网站下载所需的 Visual Studio,安装它,重新启动您的计算机并转到第 5 步(在我的情况下,我从不需要 windows 中的第 4 步,但是,我不是 MS 专家。
关闭您的 conda 环境
conda deactivate
接下来,您需要在您的 conda 环境中从 conda-forge 存储库安装 pygobject。您可以将 repo 添加到您最喜欢的 conda 包管理器,或者简单地 运行 以下命令作为 root(成为 root 很重要)。我是在项目外做的,你可以在项目内做:
conda install -c conda-forge pygobject
在我的例子中,conda 不在路径中。我已经安装在:
/opt/anaconda3/bin/
您可以 运行 普通用户的以下命令来找出 conda 的位置:
which conda
开启conda环境
source activate <your env name>
或者对应的anaconda activate语法(我没用过所以记不太清了)
重复第一步安装不会失败:
pip install pygobject
或者如果你特别想安装 gi,你可以 运行:
pip install pgi
正确的包裹是 "pgi" 不是 "gi"
由于 gi 是 pygobject 的依赖项,因此一切都会正确安装。你可以通过运行ning
查看python
>>> import gi
您可能会发现以下内容对 Windows 很有用,尽管您可能需要稍微解决一下: GStreammer python bindings on Windows