相关疑难解决方法(0)

macosx下的python matplotlib框架?

我收到此错误:

/sw/lib/python2.7/site-packages/matplotlib/backends/backend_macosx.py:235:UserWarning:Python未作为框架安装.如果未将Python安装为框架,则MacOSX后端可能无法正常工作.有关在Mac OS X上安装Python作为框架的更多信息,请参阅Python文档

我使用fink安装了python27,并且使用默认的matplotlib是使用macosx框架.

python matplotlib fink

59
推荐指数
7
解决办法
2万
查看次数

Mac OS X上的Python和非框架构建之间的差异

在Mac OS X上,Python构建和非框架构建(即标准UNIX构建)之间有什么区别?另外,每个的优点和缺点是什么?

初步研究

以下是我在发布此问题之前找到的信息:

  • [Pythonmac-SIG]为什么需要使用Python的Framework构建
    • B. Grainger:"我似乎记得,如果你想用原生Mac GUI做任何事情,就需要一个Python的Framework构建.我的理解是否正确?"
    • C. Barker:"非常多 - 要访问Mac GUI,应用程序需要在适当的Mac应用程序包中.框架构建提供了这个."
  • Apple Developer Connection:框架定义
    • "框架是一个包(结构化目录),它包含动态共享库以及相关资源,例如nib文件,图像文件和头文件.当您开发应用程序时,您的项目将链接到一个或多个框架.例如,iPhone应用程序项目默认链接到Foundation,UIKit和Core Graphics框架.您的代码通过应用程序编程接口(API)访问框架的功能,API由框架通过其头文件发布.动态共享,多个应用程序可以同时访问框架代码和资源.系统根据需要将框架的代码和资源加载到内存中,并在所有应用程序之间共享资源的一个副本.
  • 框架编程指南:什么是框架?
    • "与静态链接库和其他类型的动态共享库相比,Frameworks具有以下优势:
      • 框架组相关,但是分开,资源在一起.通过此分组,可以更轻松地安装,卸载和定位这些资源.
      • 框架可以包括比库更多种资源类型.例如,框架可以包含任何相关的头文件和文档.框架的多个版本可以包含在同一个包中.这使得可以向后兼容旧程序.
      • 无论有多少进程正在使用这些资源,在任何给定时间,只有一个框架的只读资源副本驻留在内存中.这种资源共享减少了系统的内存占用,有助于提高性能."

背景

在Mac OS X 10.6 Snow Leopard之前,我没有考虑过这个,因为我只是下载并安装Python 2.6.2 Mac安装程序磁盘映像,这是一个框架构建,并使用virtualenv,pip继续我的业务但是,随着Snow Leopard到64位,gcc等的变化,我注意到一些问题让我想要从源代码构建/编译Python 2.6.2+,这让我想到了将Python构建为MacOSX | Darwin框架的差异和优缺点的问题.

python macos frameworks

49
推荐指数
1
解决办法
6958
查看次数

Anaconda运行时错误:Python未作为框架安装?

我用pkg安装程序安装了Anaconda:

Python 2.7.10 |Continuum Analytics, Inc.| (default, May 28 2015, 17:04:42) 
[GCC 4.2.1 (Apple Inc. build 5577)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://binstar.org
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用matplotlib中的任何东西时,即:

 from matplotlib import pyplot as plt
Run Code Online (Sandbox Code Playgroud)

我明白了

RuntimeError: Python is not installed as a framework.
The Mac OS X backend will not be able to function correctly if Python is not installed 
as a framework. See the …
Run Code Online (Sandbox Code Playgroud)

python macos matplotlib anaconda

33
推荐指数
6
解决办法
3万
查看次数

标签 统计

python ×3

macos ×2

matplotlib ×2

anaconda ×1

fink ×1

frameworks ×1