Nic*_*fel 3 python postgresql macos psycopg2
原始消息(现已过时):
运行python setup.py install后,我得到以下内容:
Warning: Unable to find 'pg_config' filebuilding 'psycopg2._psycopg' extension
gcc-4.0 -arch ppc -arch i386 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -O3 - DPSYCOPG_DEFAULT_PYDATETIME=1 -DPSYCOPG_VERSION="2.2.1 (dt dec ext pq3)" -DPSYCOPG_EXTENSIONS=1 -DPSYCOPG_NEW_BOOLEAN=1 -DHAVE_PQFREEMEM=1 -DHAVE_PQPROTOCOL3=1 -I/Library/Frameworks/Python.framework/Versions/2.6/include/python2.6 -I. -c psycopg/psycopgmodule.c -o build/temp.macosx-10.3-fat-2.6/psycopg/psycopgmodule.o
unable to execute gcc-4.0: No such file or directory
error: command 'gcc-4.0' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)
对于那些知道关于后端网络编程的第一件事情的人来说,可能会有一些令人惊讶的显而易见的东西,但不幸的是,这对我来说都是gobbledegook.psycopg2文档没有帮助.
6月12日早期更新:更新了我的所有软件后,错误消息已更改.
现在,当我运行"python setup.py install"时,我得到以下内容:
Warning: Unable to find 'pg_config' filebuilding 'psycopg2._psycopg' extension
gcc-4.0 -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -O3 -DPSYCOPG_DEFAULT_PYDATETIME=1 -DPSYCOPG_VERSION="2.2.1 (dt dec ext pq3)" -DPSYCOPG_EXTENSIONS=1 -DPSYCOPG_NEW_BOOLEAN=1 -DHAVE_PQFREEMEM=1 -DHAVE_PQPROTOCOL3=1 -I/Library/Frameworks/Python.framework/Versions/2.6/include/python2.6 -I. -c psycopg/psycopgmodule.c -o build/temp.macosx-10.3-fat-2.6/psycopg/psycopgmodule.o
Run Code Online (Sandbox Code Playgroud)
然后是很长的其他错误消息列表.
当我将"gcc-4.0"放入终端时,它可能会或可能不相关,它会返回:
i686-apple-darwin10-gcc-4.0.1: no input files
Run Code Online (Sandbox Code Playgroud)
更新格林威治标准时间12月12日12:41:我认为macports安装有效,但是当我尝试运行网站时,它结束时出现以下错误:
raise ImproperlyConfigured("Error loading psycopg2 module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading psycopg2 module: No module named psycopg2
Run Code Online (Sandbox Code Playgroud)
所以我想这意味着psycopg2毕竟没有正确安装.所以我回到原点.
(有关更新的问题,请参阅下面的编辑)
您的计算机上没有"gcc4.0"编译器可执行文件,或者版本正确,或者安装在python无法找到/使用的位置.XCode/Developer Tools(包括GCC)应该在您的原始OSX安装DVD上.
既然你很谦虚地称自己为新手,这里有一个智慧的核心......解决这个错误实际上与后端Web开发无关,因为它是你的本地开发环境(你的机器和所有软件都是如此)它是配置和安装)这是问题.我这样解读gobbledegook的最佳提示就是开始使用谷歌搜索关键字来解决之前从未听过的事情.如果我在你的鞋子里,这个错误信息尖叫给我"去找出gck4.0到底是什么.然后,当我知道它是什么以及它做了什么,以及为什么python需要它,那么我想出为什么python在我的电脑上找不到它,然后我就它做了些什么." 然而,解决这些问题的满足感并非适用于所有人,这是肯定的.
所有这些问题的答案是:psycopg2是一个用C语言编写的python扩展.python的很多扩展都是用C语言编写的,而不是python,因为C比python更加优化.实际上,这就是python解释器本身所写的内容.C语言代码必须在可用之前进行编译(与python代码不同,它是被解释的)在这种情况下,您需要的编译器是gcc4.0.现在,也许如果您使用的是Windows或Linux,psycopg2的编译版本可能已经可用,并且您不需要安装GCC,因为您不必编译它来使用它(它将被编译为您).但是,似乎你必须自己在OS X上编译它,为此,你需要在系统PATH中使用程序"gcc4.0",以便你试图运行的安装脚本可以找到并使用它.在OS X上,您可以从计算机附带的原始安装DVD中获取它.将它们弹出驱动器并找到Developer Tools安装程序.一旦安装完毕,您就可以通过尝试运行命令"gcc4.0"来检查是否安装了GCC 4.0编译器.
编辑您的更新
看起来您现在已经安装了GCC 4.0编译器!干得好.当你看到这个:
>gcc4.0
i686-apple-darwin10-gcc-4.0.1: no input files
Run Code Online (Sandbox Code Playgroud)
那个输出是编译器告诉你它的确切版本,然后告诉你你没有给它任何参数,所以,它不会为你做任何事情.哪个没关系,因为你的psycopg2安装脚本会调用它,而不是直接调用它.
接下来,看起来像psycopg2预计你应该安装PostgreSQL服务器开发库.由于我发现您现在正在使用MacPorts,因此您应该可以使用以下命令轻松安装这些库:
sudo port install postgresql-server-devel
Run Code Online (Sandbox Code Playgroud)
这应该可以让你找到pg_config设备正在寻找的缺失的可执行文件.
让我们了解您的最新进展!
| 归档时间: |
|
| 查看次数: |
10771 次 |
| 最近记录: |