【问题标题】:building matplotlib from source on fedora 19, and found no freetype header files在 fedora 19 上从源代码构建 matplotlib,发现没有 freetype 头文件
【发布时间】:2014-01-12 16:58:54
【问题描述】:

我在一个fedora 19系统上安装了matplotlib源码包,得到如下信息:

============================================================================
Edit setup.cfg to change the build options

BUILDING MATPLOTLIB
    matplotlib: yes [1.3.1]
        python: yes [2.7.6 (default, Jan  9 2014, 14:24:42)  [GCC
                4.8.1 20130603 (Red Hat 4.8.1-1)]]`
      platform: yes [linux2]

REQUIRED DEPENDENCIES AND EXTENSIONS
         numpy: yes [version 1.8.0]
      dateutil: yes [dateutil was not found. It is required for date
                     axis support. pip/easy_install may attempt to
                     install it after matplotlib.]
       tornado: yes [tornado was not found. It is required for the
                WebAgg backend. pip/easy_install may attempt to
                install it after matplotlib.]
     pyparsing: yes [pyparsing was not found. It is required for
                mathtext support. pip/easy_install may attempt to
                install it after matplotlib.]
         pycxx: yes [Couldn't import.  Using local copy.]
        libagg: yes [pkg-config information for 'libagg' could not
                be found. Using local copy.]
      freetype: no  [The C/C++ header for freetype2 (ftbuild.h)
                could not be found. You may need to install the
                development package.]
           png: yes [pkg-config information for 'libpng' could not
                be found. Using unknown version.]

OPTIONAL SUBPACKAGES
   sample_data: yes [installing]
      toolkits: yes [installing]
         tests: yes [using nose version 1.3.0]

OPTIONAL BACKEND EXTENSIONS
        macosx: no  [Mac OS-X only]
        qt4agg: no  [PyQt4 not found]
       gtk3agg: no  [Requires pygobject to be installed.]
     gtk3cairo: no  [Requires cairo to be installed.]
        gtkagg: no  [Requires pygtk.]
         tkagg: no  [TKAgg requires Tkinter.]
         wxagg: no  [requires wxPython]
           gtk: no  [The C/C++ header for gtk (gtk/gtk.h) could not
                be found.  You may need to install the development
                package.]
           agg: yes [installing]
         cairo: no  [cairo not found]
     windowing: no  [Microsoft Windows only]

OPTIONAL LATEX DEPENDENCIES
        dvipng: yes [version 1.14]
   ghostscript: yes [version 9.07]
         latex: no
       pdftops: yes [version 0.22.1]

============================================================================
                * The following required packages can not be built:
                * freetype

然而,在安装之前,我已经在默认目录下安装了freetype 2.5.2,即/usr/local。我在/usr/local/include/freetype2 中找到了头文件(ft2build.h)。 setupext.py也被勾选了,在class FreeType(SetupPackage)的代码部分,有

the default_include_dirs=
          ['freetype2','lib/freetype2/include','lib/freetype2/include/freetype2',]

现在,我不知道为什么软件包找不到已安装的 freetype。有人有什么想法吗?谢谢大家的帮助!!!

【问题讨论】:

  • 你是通过yum还是手动安装的?
  • 在我的系统上,标头安装在/usr/lib 中。我怀疑您是手动进行了 freetype 安装。您要么需要使用打包的开发版本,要么需要使用您实际安装 freetype 到目录列表的路径(强烈怀疑它们都与/usr 相关)
  • 另请注意,fedora freetype-devel 软件包将标头安装到/usr/local/include 上的/usr/include (apps.fedoraproject.org/packages/freetype-devel)。

标签: python linux matplotlib freetype


【解决方案1】:

我遇到了完全相同的问题。我解决了这个问题,只需在 self._check_for_pkg_config() 中的 setupext.py 中用我的 ft2build.h(由 tcaswell 建议)的整个路径替换 'ft2build.h'。

【讨论】:

    【解决方案2】:

    感谢您的所有帮助!

    是的,我手动安装所有这些软件包,因为我的 linux 系统的电脑无法连接到互联网。

    在我找到你的回复之前,我已经以间接的方式解决了问题;-(,这是我所做的:

    因为freetype 2.5.2 的devel 包对我的fedora 19 系统不方便,所以我不得不选择使用freetype 2.4.11-6 和它的devel 包,现在依赖关系没问题。我个人怀疑这是环境路径设置的问题,但我当时没有时间测试它。其实freetype 2.5.2的源码包已经包含了devel子目录。

    顺便说一句,matplotlib的手动安装很复杂,排除了必须的包:libpng和numpy,你仍然需要安装distribute、backports.ssl_match_hostname、tornado、six、dateutil和pyparsing。只有在所有这些安装都结束后,matplotlib 才能最终安装到您的系统中。

    【讨论】:

    • 是的,matplotlib 有很多外部依赖。可能应该有一个简单的方法来关闭 webagg 的东西,所以不需要 tornado,但 sixdateutilpyparsing 绝对是必不可少的软件包。 matplotlib.org/users/installing.html 可能需要更新。
    【解决方案3】:

    在 Windows 7 上使用 pip install 在 cygwin 64 上出现同样的问题:安装 pkg-config 后解决。

    【讨论】:

      猜你喜欢
      • 2013-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-18
      • 2017-05-28
      • 1970-01-01
      • 2018-03-05
      • 2017-07-29
      相关资源
      最近更新 更多