繁体   English   中英

如何在 linux-64 上为 Anaconda Python 3.5 安装图形工具?

[英]How to install graph-tool for Anaconda Python 3.5 on linux-64?

我正在尝试在 Ubuntu 14.04 (x64) 上为 Anaconda Python 3.5 安装图形工具,但事实证明这是一个真正的技巧。

我尝试了这种方法,但遇到了问题:

The following specifications were found to be in conflict:
  - graph-tool
Use "conda info <package>" to see the dependencies for each package.

挖掘依赖关系导致 gobject-introspection 陷入死胡同

所以我尝试了另一种方法:

使用 conda 安装 boost,然后尝试 ./configure、make 和 make install graph-tool... 就 ./configure 而言:

===========================
Using python version: 3.5.2
===========================
checking for boostlib >= 1.54.0... yes
checking whether the Boost::Python library is available... yes
checking whether boost_python is the correct library... no
checking whether boost_python-py27 is the correct library... no
checking whether boost_python-py27 is the correct library... (cached) no
checking whether boost_python-py27 is the correct library... (cached) no
checking whether boost_python-py35 is the correct library... yes
checking whether the Boost::IOStreams library is available... yes
configure: error: Could not link against boost_python-py35 !

我知道这是关于 ./configure 命令的环境变量和 conda 将 libboost 安装到 Anaconda 奇怪的地方,我只是不知道该怎么做,而且我的 Google-fu 失败了。 所以这是另一个死胡同。

最近必须在 linux-64 中安装图形工具的任何人都可以给我一个演练吗? 它是在 VMWare Workstation 10.0.7 中运行的全新 VM

对于那些遇到类似问题的人,请先尝试使用以下命令更改 conda 通道的顺序:

$ conda config --add 频道 ostrokach

$ conda config --add 通道默认值

$ conda config --add 通道 conda-forge

然后:

$ conda 安装图形工具

为 Anaconda Python 3.5、Ubuntu 14.04 安装图形工具 2.26。

注意:在我撰写本文时,图形工具的 ostrokach 频道 conda 安装仅在 2.18 版中。

这是我用来安装图形工具 2.26 的 docker 文件。 可能有一种更清洁的方法,但到目前为止,这是我设法拼凑起来的唯一真正有效的方法。

注意:如果您不熟悉 docker 文件并且只想从终端进行安装,请忽略第一行(以 FROM 开头),忽略每次出现的 RUN 一词,剩下的是在终端中执行的一系列命令。

FROM [your 14.04 base image]

RUN conda upgrade -y conda
RUN conda upgrade -y matplotlib

RUN \
add-apt-repository -y ppa:ubuntu-toolchain-r/test && \
apt-get update -y && \
apt-get install -y gcc-5 g++-5 && \
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 60 --slave /usr/bin/g++ g++ /usr/bin/g++-5

RUN wget https://github.com/CGAL/cgal/archive/releases/CGAL-4.10.2.tar.gz && \
tar xzf CGAL-4.10.2.tar.gz && \
cd cgal-releases-CGAL-4.10.2/ && \
cmake . && \
make && \
make install

RUN cd /tmp && \
# note: master branch of repo appears relatively stable, has not been updated since 2016
git clone https://github.com/sparsehash/sparsehash.git && \
cd sparsehash && \
./configure && \
make && \
make install

RUN apt-get update
RUN apt-get install -y build-essential g++ python-dev autotools-dev libicu-dev build-essential libbz2-dev libboost-all-dev
RUN apt-get install -y autogen autoconf libtool shtool

# install boost
RUN cd /tmp && \
wget https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.tar.gz && \
tar xzvf boost_1_66_0.tar.gz && \
cd boost_1_66_0 && \
sudo ./bootstrap.sh --prefix=/usr/local && \
sudo ./b2 && \
sudo ./b2 install

# install newer cairo
RUN cd /tmp && \
wget https://cairographics.org/releases/cairo-1.14.12.tar.xz && \
tar xf cairo-1.14.12.tar.xz && \
cd cairo-1.14.12 && \
./configure && \
make && \
sudo make install

RUN cd /tmp && \
wget https://download.gnome.org/sources/libsigc++/2.99/libsigc++-2.99.10.tar.xz && \
tar xf libsigc++-2.99.10.tar.xz && \
cd libsigc++-2.99.10 && \
./configure && \
make && \
sudo make install && \
sudo cp ./sigc++config.h /usr/local/include/sigc++-3.0/sigc++config.h

RUN cd /tmp && \
wget https://www.cairographics.org/releases/cairomm-1.15.5.tar.gz && \
tar xf cairomm-1.15.5.tar.gz && \
cd cairomm-1.15.5 && \
./configure && \
make && \
sudo make install && \
sudo cp ./cairommconfig.h /usr/local/include/cairomm-1.16/cairomm/cairommconfig.h

RUN conda install -y -c conda-forge boost pycairo
RUN conda install -y -c numba numba=0.36.2

RUN conda install -y -c libboost py-boost && \
conda update -y cffi dbus expat pycairo pandas scipy numpy harfbuzz setuptools boost

RUN apt-get install -y apt-file dbus libdbus-1-dev && \
apt-file update

RUN apt-get install -y graphviz
RUN conda install -y -c conda-forge python-graphviz

RUN sudo apt-get install -y valgrind

RUN apt-get install -y libcgal-dev libcairomm-1.0 libcairomm-1.0-dev libcairo2-dev python-cairo-dev

RUN conda install -y -c conda-forge pygobject
RUN conda install -y -c ostrokach gtk

RUN cd /tmp && \
wget https://git.skewed.de/count0/graph-tool/repository/release-2.26/archive.tar.bz2 && \
bunzip2 archive.tar.bz2 && \
tar -xf archive.tar && \
cd graph-tool-release-2.26-b89e6b4e8c5dba675997d6f245b301292a5f3c59 && \
# Fix problematic parts of the graph-tool configure.ac file
sed -i 's/PKG_INSTALLDIR/#PKG_INSTALLDIR/' ./configure.ac && \
sed -i 's/AM_PATH_PYTHON(\[2\.7\])/AM_PATH_PYTHON(\[3\.5\])/' ./configure.ac && \
sed -i 's/\${PYTHON}/\/usr\/local\/anaconda3\/bin\/python/' ./configure.ac && \
sed -i '$a ACLOCAL_AMFLAGS = -I m4' ./Makefile.am && \
sudo ./autogen.sh && \
sudo ./configure CPPFLAGS="-I/usr/local/include -I/usr/local/anaconda3/pkgs/pycairo-1.15.4-py35h1b9232e_1/include -I/usr/local/include/cairo -I/usr/local/include/sigc++-3.0 -I/usr/include/freetype2" \
    LDFLAGS="-L/usr/local/include -L/usr/local/lib/cairo -L/usr/local/include/sigc++-3.0 -L/usr/include/freetype2" \
    PYTHON="/usr/local/anaconda3/bin/python" \
    PYTHON_VERSION=3.5 \
sudo make && \
sudo make install

警告: make图形工具可能需要几个小时,并且需要 >7 GB 的内存。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM